freebsd installation

4

Click here to load reader

Upload: telkom-institute-of-management

Post on 20-Jun-2015

378 views

Category:

Education


0 download

DESCRIPTION

a tutorial guide explaining how to install FreeBSD, an experience at IMTelkom (http://www.imtelkom.ac.id)

TRANSCRIPT

Page 1: FreeBSD Installation

Standar Instalasi FreeBSD @ Institut Manajemen Telkom (http://www.imtelkom.ac.id)

Setting FreeBSD 8

Ada beberapa setting standar yang harus dilakukan pada system FreeBSD yang telah ter-install, terutama sebagai server yang akan melayani berbagai service dan

protocol karena tersambung dengan jaringan. Seperti halnya suatu komputer yang terhubung dengan jaringan, beberapa informasi akan diperlukan server untuk bisa bergabung dengan suatu jaringan :

1. IP Address, sebagai identifikasi diri di jaringan

2. netmask, sebagai pembatas (melokalisasi jaringan) 3. Gateway, sebagai pintu keluar ke jaringan lain 4. DNS, sebagai tujuan bertanya untuk resolusi nama

1. setting DNS (Domain Name Service) server, ada pada file /etc/resolv.conf

# cat /etc/resolv.conf

search imtelkom.ac.id

nameserver 10.1.1.12

dengan setting diatas, FreeBSD atau suatu aplikasi akan dapat menanyakan ke server dengan IP "10.1.1.12" setiap kali membutuhkan resolusi nama (mengubah

nama menjadi IP address atau sebaliknya) Tips:

- Apache dan Squid akan menanyakan validitas nama-nya ke DNS server, jika

gagal melakukan query ke DNS server maka aplikasi akan di-shutdown. Jadi pastikan name server sudah aktif sebelum server lain di-reboot

- untuk mencoba koneksi DNS bisa dilakukan dengan :

# host mail query ke DNS server sesuai isi /etc/resolv.conf

mail.imtelkom.ac.id has address 10.1.1.2

# host mail.imtelkom.ac.id 10.1.1.12 query ke DNS server 10.1.1.12

mail.imtelkom.ac.id has address 10.1.1.2

- IM Telkom memiliki 2 DNS system, 1 untuk di-query dari intranet dan 1 lagi untuk di-query dari internet. Hal ini ditujukan untuk memisahkan server mana

yang bisa diakses dari internet dan server mana yang hanya bisa diakses dari intranet, dg tujuan utama adalah security # host imtelkom.ac.id query domain imtelkom.ac.id dari intranet

imtelkom.ac.id has address 10.1.1.2

imtelkom.ac.id mail is handled by 5 mail.imtelkom.ac.id.

# host imtelkom.ac.id 10.1.1.12 query ke DNS server 10.1.1.12

Using domain server:

Name: 10.1.1.12

Address: 10.1.1.12#53 DNS intranet

Aliases:

Page 2: FreeBSD Installation

Standar Instalasi FreeBSD @ Institut Manajemen Telkom (http://www.imtelkom.ac.id)

imtelkom.ac.id has address 10.1.1.2

imtelkom.ac.id mail is handled by 5 mail.imtelkom.ac.id.

# host imtelkom.ac.id 10.1.1.2 query ke DNS server 10.1.1.2

Using domain server:

Name: 10.1.1.2

Address: 10.1.1.2#53 DNS internet

Aliases:

imtelkom.ac.id has address 118.97.187.12

imtelkom.ac.id mail is handled by 5 mail.imtelkom.ac.id.

2. setting hostname, IP address, gateway, dan aktivasi firewall, ada pada file /etc/rc.conf

# cat /etc/rc.conf

hostname = "www.imtelkom.ac.id"

ifconfig_em0 = "inet 10.1.1.2 netmask 0xfffffff0" 10.1.1.2/28

defaultrouter = "10.1.1.1" gateway

firewall_enable = "YES"

firewall_type = "CLIENT"

Tips:

- kode "em0" disesuaikan dengan hasil deteksi sysInstall (instalasi step 16)

- untuk memberi IP Address lain (pada subnet yg sama) pada interface

(Ethernet Card) yg sama, file /etc/rc.conf akan menjadi :

ifconfig_em0_alias0 = "inet 10.1.1.12 netmask 0xffffffff"

ifconfig_em0_alias1 = "inet 10.1.1.14 netmask 0xffffffff"

untuk eksekusi langsung pada prompt (konfigurasi akan hilang jika reboot): ifconfig em0 alias 10.1.1.12 netmask 0xffffffff

ifconfig em0 –alias 10.1.1.12 netmask 0xffffffff (untuk menghapus)

- untuk memberi IP lain (pada subnet yg beda) pada interface yg sama :

cloned_interfaces = "vlan0"

ifconfig_vlan0 =

"inet 10.1.2.2 netmask 0xffffff00 vlan 205 vlandev em0"

- defaultrouter adalah gateway untuk IP yg bukan alias dan bukan cloned,

untuk mengeset gateway untuk subnet lain bisa dilakukan dengan cara: static_routes = "intranet"

route_intranet = "10.1.2.0 10.1.2.1 255.255.255.0"

(yang berarti: untuk mengakses subnet 10.1.2.0/24 arahkan ke 10.1.2.1)

- untuk menambah routing :

route add 10.1.2.0 10.1.2.254 255.255.255.0

(yang berarti: untuk mengakses subnet 10.1.2.0/24 arahkan ke 10.1.2.254)

Page 3: FreeBSD Installation

Standar Instalasi FreeBSD @ Institut Manajemen Telkom (http://www.imtelkom.ac.id)

- untuk melihat table routing, gunakan :

netstat -r

Routing tables

Internet:

Destination Gateway Flags Refs Use Netif Expire

default 10.1.1.1 UGS 21919 44178604 em0

10.1.1.0 link#1 U 98 49635966 em0

10.1.1.2 link#1 UHS 0 8404431 lo0

10.1.1.12 link#1 UHS 0 8 lo0

10.1.10.32/29 10.16.10.81 UGS 0 0 em1

10.16.10.80/29 link#2 U 0 0 em1

10.16.10.84 link#2 UHS 0 0 lo0

localhost link#3 UH 0 1586570 lo0

3. jika aktivasi firewall ada di /etc/rc.conf, isi setting firewall ada pada file

/etc/rc.firewall

Firewall dengan type CLIENT diset secara default untuk menutup semua protokol (TCP, UDP, GRE) dan port (deny all), untuk kemudian akan dibuka seperlunya.

Protokol dan port yg perlu dibuka tergantung dari peruntukan server tersebut : - FTP server : TCP port 21 - mail server : TCP port 25 untuk SMTP (kirim email) dan TCP port 110 untuk

POP3 (download email)

- DNS server : UDP port 53 - web server : TCP port 80 untuk HTTP dan TCP port 443 untuk HTTPS (web

browsing dengan SSL, Secure Socket Layer)

- news server : TCP port 119 untuk NNTP (forum diskusi) - VPN server : TCP port 1723 untuk autentikasi VPN dan GRE untuk enkripsi - proxy server : TCP port 8080

(TCP = Transmission Control Protocol, UDP = User Datagram Protocol, IP = Internet Protocol, GRE = Generic Routing Encapsulation) # cat /etc/rc.firewall

………

[Cc][Ll][Ii][Ee][Nn][Tt])

net="10.1.1.0"

mask="255.255.255.240"

ip="10.1.1.2"

setup_loopback

………

${fwcmd} add pass gre from 10.1.0.0/16 to ${ip} allow incoming GRE

${fwcmd} add pass gre from ${ip} to 10.1.0.0/16 allow outgoing GRE

${fwcmd} add pass all from ${ip} to any allow anything outgoing

${fwcmd} add pass tcp from 10.1.0.0/16 to ${ip} 21 allow FTP

${fwcmd} add pass tcp from 10.1.0.0/16 to ${ip} 25 allow SMTP

${fwcmd} add pass udp from 10.1.0.0/16 to ${ip} 53 allow DNS

${fwcmd} add pass tcp from 10.1.0.0/16 to ${ip} 80 allow HTTP

${fwcmd} add pass tcp from 10.1.0.0/16 to ${ip} 110 allow POP3

${fwcmd} add pass tcp from 10.1.0.0/16 to ${ip} 119 allow NNTP

${fwcmd} add pass tcp from 10.1.0.0/16 to ${ip} 443 allow HTTPS

${fwcmd} add pass tcp from 10.1.0.0/16 to ${ip} 1723 allow VPN

Page 4: FreeBSD Installation

Standar Instalasi FreeBSD @ Institut Manajemen Telkom (http://www.imtelkom.ac.id)

${fwcmd} add pass tcp from 10.1.0.0/16 to ${ip} 8080 allow proxy

${fwcmd} allow ip from ${ip} to ${net}:${netmask}

rule untuk meng-allow semua paket ke subnet 10.1.1.0/24

………

;; deny everything (last rule)

Tips : - IPFW dipilih karena merupakan default firewall dari FreeBSD

- urutan rule sangat berpengaruh karena IPFW akan membandingkan setiap paket data dengan rule2 yg ada secara berurutan sesuai dengan nomor rule dari nomor terkecil sampai nomor terbesar (nomor terbesar adalah "deny all")

- semakin sedikit jumlah rule yang digunakan maka semakin cepat pemrosesan

paket oleh IPFW, dan semakin generic/simple rule yang digunakan maka semakin cepat pula pemrosesan paket oleh IPFW

- dynamic rules (semua rule setelah "check-state") akan mempercepat

pengecekan suatu paket data terhadap rule2 yg ada, namun rentan terhadap flooding. Jadi hanya paket2 outgoing (keluar dari server) yg sebaiknya dimasukkan ke dynamic rule seperti contoh di bawah ini :

${fwcmd} add check state

${fwcmd} allow tcp from any to {ip} keep-state

selain mempercepat pengecekan data, kelebihan dari dynamic rule adalah rule

untuk paket data arah sebaliknya tidak perlu lagi dibuat. Pada contoh diatas rule untuk arah incoming tidak perlu dibuat.

4. setting host yang boleh masuk ke server, ada pada file /etc/hosts.allow

# cat /etc/hosts.allow

sshd : 10.1.1.0/255.255.255.0 : allow

sshd : ALL : deny

mysqld : 10.1.1.0/255.255.255.0 : allow

mysqld : ALL : deny

entry pertama akan memperbolehkan semua komputer dari subnet 10.1.1.0/24 untuk menggunakan aplikasi SSH dan diluar itu akan ditolak (entry kedua).

entry ketiga akan memperbolehkan semua komputer dari subnet 10.1.1.0/24 untuk menggunakan aplikasi MySQL dan diluar itu akan ditolak (entry keempat). 5. tuning variable system pada file /boot/loader.conf dan file /etc/sysctl.conf

# cat /boot/loader.conf

dummynet.ko_load="YES" # load modul DUMMYNET untuk trafic shaper

kern.maxfiles="4096" # maximum file yang bisa dibuka

kern.maxusers="64" # maximum static tables (per user)

kern.ipc.maxsockets="4096" # maximum sockets yg tersedia

kern.ipc.nmbclusters="32768" # maximum Network Memory Buffer Clusters

kern.maxproc="8192" # maximum processes

# cat /etc/sysctl.conf

kern.ipc.somaxconn=4096 # maximum socket untuk koneksi