Senin, 10 Januari 2011

Setting Server Ubuntu

Tahap 1 Setting Network Interface

File yang mengatur configurasi ip address adalah /etc/network/interfaces. Rubah isi file tersebut dengan menggunakan editor vi atau pico.

# sudo pico /etc/network/interfaces

maka akan muncul:

auto lo

iface lo inet loopback

tambahkan isi file tersebut sehingga menjadi:

auto lo

iface lo inet loopback

auto eth0

iface eth0 inet dhcp # setting eth0 dengan ip otomatis/ dhcp

auto eth1

iface eth1 inet static # setting eth1 dengan ip manual

address 192.168.0.1 # isi ip address sesuai perencanaan

netmask 255.255.255.0

network 192.168.0.0

broadcast 192.168.0.255

dns-nameservers 192.168.0.1

dns-search dns.sekolah.net

Lakukan restart/start pada network:

# sudo /etc/init.d/networking restart

Lihat hasil seting kartu jaringan pada eth0 dan eth1:

# ifconfig


Tahap 2 Setting Nat/ Router

Agar server/ router dapat meneruskan paket dari wan ke lan (client) maka yang perlu kita lakukan dua hal yaitu mengaktifkan ip_forward dan membuat nat dengan memberikan masquerade pada iptables.

Sebelumnya coba lakukan ping dari server ke www.google.com (wan).

# ping www.google.com

maka ping tersebut akan berhasil, menandakan bahwa server sudah terhubung ke internet/ wan. Selanjutnya coba lakukan ping dari komputer client, naka ping akan gagal dikarenakan server/ router belum bisa meneruskan paket dari wan.

Mengaktifkan ip_forward ada beberapa cara diantaranya:

Merubah isi configurasi pada file /etc/sysctl.conf , dengan cara cari teks:

# net.ipv4.ip_forward=1

aktifkan configurasi tersebut dengan menghilangkan tanda # pada awal baris, sehingga menjadi:

net.ipv4.ip_forward=1

untuk meningkatan pengamanan sebaiknya anti spoofing attack dan kernel map protect diaktifkan, dengan menghilangkan tanda # pada teks berikut ini:

# net.ipv4.conf.default.rp_filter=1

# net.ipv4.conf.all.rp_filter=1

Setelah disimpan, lakukan restart pada server dengan perintah

# sudo reboot

Membuat nat dengan masquerade pada iptables dengan cara:

# sudo iptables –t nat –A POSTROUTING –o eth0 –j MASQUERADE

Lakukan restart sekali lagi pada server. Kemudian coba lakukan ping dari client, jika berhasil maka configurasi router telah berhasil. Semuanya dengan asumsi bahwa di komputer client sudah disetting manual ip addressnya sesuai dengan eth1 pada server/ router yaitu ip keluarga 192.168.0.xx.


Tahap 3 Update dan Install Repostory yang akan dipakai

Untuk meng-upgrade program bisa dilakukan dari cdrom atau dari server repostori yang ada di internet. Untuk upgrade dari cdrom caranya:

Masukkan cdrom ubuntu server ke dalam cd drive, kemudian lakukan mounting cdrom:

# sudo mount /dev/cdrom /cdrom

Edit file /etc/apt/sources.list, dan hapus tanda # pada teks berikut:

# deb cdrom:[Ubuntu-Server 8.10 _Intrepid Ibex_ - Release i386 (20081028.1)]/ intrepid main restricted

Untuk upgrade dari cdrom perintahnya adalah:

# sudo apt-get cdrom

Sedangkan untuk update dari internet:

# sudo apt-get update

Lakukan keduanya, dan kemudian install program dengan perintah:

# sudo apt-get install “nama_program” # nama program diganti dengan program yang diinginkan


Tahap 4 Setting DHCP server

Agar client bisa mendapat ip otomatis dari server maka perlu diinstall DHCP server. Caranya:

Install program dhcp3-server

# sudo apt-get install dhcp3-server

Edit file /etc/dhcp3/dhcpd.conf, rubah isinya menjadi:

ddns-update-style none;

subnet 192.168.0.0 netmask 255.255.255.0 {

option broadcast-address 192.168.0.255;

option subnet-mask 255.255.255.0;

option domain-name-servers 192.168.0.1; #sesuaikan dns server yang ada

option domain-name "dns.sekolah.net"; #sesuaikan dns server yang ada

option routers 192.168.0.1;

option netbios-name-servers 192.168.0.1;

default-lease-time 600;

max-lease-time 604800;

log-facility local7;

range 192.168.0.100 192.168.0.200

}

setting diatas dengan asumsi:

ip lokal adalah 192.168.0.xx

dns server dari server sendiri 192.168.0.1 (dns.sekolah.net) jika ingin menambah tinggal diberi koma

batas ip address 192.168.0.100 sampai 192.168.0.200.

Kemudian edit file /etc/default/dhcp3server rubah isinya:

INTERFACES=”eth1”

Kemudian restart dhcp3-server dengan cara:

# sudo /etc/init.d/dhcpd3-server restart

Lakukan test pada client dengan cara menyetting ip address secara manual. Jika bisa mendapatkan ip otomatis dari server ini maka setting dhcp server berhasil.


Tahap 5 Setting DNS Server

Fungsi DNS Server ini adalah me-resolved nama domain yang diminta client untuk memberitahukan server dari domain yang ditanyakan client berada di IP mana.

Edit file /etc/bind/named.conf.options, rubah isinya menjadi

options {

directory "/var/cache/bind";

forwarders {

202.134.1.5;

202.134.0.155;

202.134.0.5;

202.134.2.5;

202.134.1.10;

203.130.208.18;

203.130.206.250;

203.130.196.6;

203.130.196.155;

203.130.196.5;

222.124.204.34;

203.130.208.18;

};

auth-nxdomain no; # conform to RFC1035

listen-on-v6 { any; };

};

Yang mana file tersebut berisi DNS forward ditujukan kemana, artinya jika kita ikut telkomspeedy maka diarahkan ip dns speedy atau openDNS atau dns Bening.net dan bisa semuanya dicantumkan.

Edit file /etc/bind/named.conf.local, rubah isinya menjadi:

include "/etc/bind/zones.rfc1918";

zone "dns.sekolah.net" {

type master;

file "/etc/bind/db.dns.sekolah.net";

};

zone "0.168.192.in-addr.arpa" {

type master;

file "/etc/bind/db.192";

};

include "/etc/bind/rndc.key";

Kemudian copy file /etc/bind/db.local sesuai nama file yang disebutkan /etc/bind/named.conf.local.

# cp /etc/bind/db.local /etc/bind/db.dns.sekolah.net

# cp /etc/bind/db.local /etc/bind/db.192

Edit file /etc/bind/db.dns.sekolah.net edit isinya menjadi:

;

; BIND data file for local loopback interface

;

$TTL 604800

@ IN SOA ns.dns.sekolah.net. mail.dns.sekolah.net. (

2009022605 ;Serial

604800 ;Refresh

86400 ;Retry

2419200 ;Expire

604800 ) ;Negative Cache TTL

;


localhost IN A 127.0.0.1

@ IN NS ns.dns.sekolah.net.

ns IN A 192.168.0.1

smtp IN CNAME ns

www IN CNAME ns

cups IN CNAME ns

proxy IN CNAME ns

sekolah IN A 192.168.0.1

tips: Biasanya tanggal terakhir perubahan sebagai seri dari zona, seperti 2009022605 yang yyyymmddss (dimana angka serial), setiap edit file configurasi tersebut agar mengganti serial tersebut dengan tanggal terbaru bertujuan agar bind9 segera mengupdate perubahaannya.

Edit file /etc/bind/db.192 isinya menjadi:

;

; BIND reverse data file for local loopback interface

;

$TTL 604800

@ IN SOA ns.dns.sekolah.net. mail.dns.sekolah.net. (

2009022603 ;Serial

604800 ;Refresh

86400 ;Retry

2419200 ;Expire

604800 ) ;Negative Cache TTL

;

@ IN NS ns.

1 IN PTR ns.dns.sekolah.net.

www IN CNAME ns

smtp IN CNAME ns

cups IN CNAME ns

proxy IN CNAME ns

Edit file /etc/hosts dan tambahkan dns.sekolah.net dan smtp.sekolah.net karena kedua domain ini diaktifkan sebagai host pula. Edit isinya menjadi:

127.0.0.1 localhost

192.168.0.1 sekolah dns.sekolah.net smtp.dns.sekolah.net proxy.dns.sekolah.net

Edit file /etc/resolv.conf edit isinya menjadi:

search dns.sekolah.net

nameserver 192.168.0.1

nameserver 127.0.0.1

Restart jaringan dan bind9…

# sudo /etc/init.d/bind9 restart

Untuk menguji bind9, kita perlu menginstall repository dnsutils, install repository tersebut…

# sudo apt-get install dnsutils

check zona untuk mengetest settingan kita didalam file /etc/bind/db.dns.sekolah.net dan /etc/bind/db.192

# sudo named-checkzone dns.sekolah.net /etc/bind/db.dns.sekolah.net

kalau settingan tidak ada masalah hasilnya akan muncul serial yang buat.

# sudo named-checkzone dns.sekolah.net /etc/bind/db.192

kemudian baru menguji dengan command dig kita mencoba untuk local-nya dulu…

# sudo dig localhost

kemudian coba menguji untuk mencari domain di inet misalnya google.com atau yahoo.com…


Tahap 6 Setting Open-SSH

SSH ini biasanya digunakan untuk remote server sebagai pengganti telnet, rsh dan rlogin. Aplikasi server yang sering digunakan dan akan kita gunakan di sini adalah PuTTY untuk remote selayaknya kita duduk di depan monitor dan keyboar server. Pada umumnya port Open-SSH default di port 22 dan sebaiknya dirubah dengan alasan untuk keamanan, dirubah ke port yang masih kosong atu yang belum digunakan untuk fungsi lain misal, 221.

Edit file /etc/ssh/sshd_config, cari Port 22 dan ganti dengan port yang di kehendaki semisal Port 221

Kemudian restart open-ssh:

# sudo /etc/init.d/ssh restart

Kemudian memberi password pada user root agar tiap kali login untuk mengedit file bisa langsung edit dan bisa langsung mengcopy ato paste file di semua folder linux. Pada dasarnya username root sudah ada hanya belum ada passwordnya akhirnya seakan tidak aktif. User root ini ada user yang memiliki hak akses dan sebaiknya jangan diberikan ke orang lain.

Cara mengganti/memberi password :

# sudo passwd root

masukan password yang dikehendaki dan ketik ulang.


Tahap 7 Setting File Sharing dengan Samba

Samba server adalah file sharing dari linux untuk bisa dibaca oleh windows. Sebelumnya install dahulu repository yang di butuhkan…

# apt-get install samba samba-common samba-doc libcupsys2 winbind smbclient smbfs

Edit file /etc/samba/smb.conf dan rubah menjadi…

[global]

log file = /var/log/samba/log.%m

passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully*.

obey pam restrictions = yes

map to guest = bad user

encrypt passwords = true

public = yes

passdb backend = tdbsam

passwd program = /usr/bin/passwd %u

wins support = yes

max wins ttl = 18748800

min wins ttl = 60

netbios name = sekolah

server string = %h server (Samba, Ubuntu)

path = /var/tmp

preferred master = yes

domain master = yes

local master = yes

workgroup = WORKGROUP

syslog = 0

panic action = /usr/share/samba/panic-action %d

usershare allow guests = yes

max log size = 1000

pam password change = yes

name resolve order = wins bcast hosts lmhosts

socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192

os level = 65

announce as = WfW

guest ok = Yes

usershare allow guests = Yes

name cache timeout = 0

nt status support = yes

nt pipe support = yes

winbind cache time = 60

idmap uid = 50-9999999999

idmap gid = 50-9999999999

idmap cache time = 120

lm announce = yes

lm interval = 10

enhanced browsing = Yes

browse list = yes

Laukan restart pada samba:

# /usr/sbin/samba restart

Test pada client windows, dan dapatkan samba server pada windows explorer.


Buat folder sharing pada server untuk client windows:

# mkdir /home/share/data

# chmood 0777 –R /home/share/data

Buka dan edit kembali file configuration samba, /etc/samba/smb.conf dan tambahkan pada baris terakhir sebagai berikut:

[Share]

comment = File Server Share

path = /home/share/data

read only = No

create mask = 0777

directory mask = 0777

Lakukan restart samba kembali…

# /etc/init.d/samba restart


Tahap 8 Setting Printer Sharing dengan CUPS


Install CUPS (Common UNIX Printing System)…

# apt-get install cupsys cupsys-client

Edit file /etc/cups/cupsd.conf menjadi seperti dibawah ini…

# troubleshooting...

LogLevel warning

# Administrator user group...

SystemGroup lpadmin

# Only listen for connections from the local machine.

Listen 631

Listen /var/run/cups/cups.sock

# Show shared printers on the local network.

Browsing on

BrowseOrder allow,deny

BrowseAllow all

# Default authentication type, when authentication is required...

DefaultAuthType Basic

# Restrict access to the server...

Order allow,deny

Allow localhost

Allow 192.168.0.*

# Restrict access to the admin pages...

Encryption Required

Order allow,deny

Allow localhost

Allow 192.168.0.*

# Restrict access to configuration files...

AuthType Default

Require user @SYSTEM

Order allow,deny

Allow localhost

Allow 192.168.0.*

# Set the default printer/job policies...

# Job-related operations must be done by the owner or an administrator...

Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-

Current-Job Resume-Job CUPS-Move-Job>

Require user @OWNER @SYSTEM

Order deny,allow

# All administration operations require an administrator to authenticate...

AuthType Default

Require user @SYSTEM

Order deny,allow

# All printer operations require a printer operator to authenticate...

Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer

Promote-Job Schedule-Job-After CUPS-Accept-Jobs CUPS-Reject-Jobs>

AuthType Default

Require user @SYSTEM

Order deny,allow

# Only the owner or an administrator can cancel or authenticate a job...

Require user @OWNER @SYSTEM

Order deny,allow

Order deny,allow

Lakukan restart pada CUPS :

# /etc/init.d/cups restart

Kemudian dari computer client (administrator) membuka web-browser dan buka https://192.168.0.1:631/

Untuk menginstall printer pada server:
  • Hubungkan printer dengan server

  • pilih menu Administrator-Find new printers

  • Setelah menemukan printer pilih “Add this printer”

Buka file /etc/samba/smb.conf kemudian baris paling bawah tambahkan…

[printers]

comment = All Printers

browseable = yes

path = /var/spool/samba

printable = yes

guest ok = yes

read only = no

create mask = 0700

[print$]

comment = Printer Drivers

path = /var/lib/samba/printers

browseable = yes

read only = no

guest ok = yes

Kemudian lakukan restart pada samba…

# /etc/init.d/samba restart