IPv6 Server: tcp wrapper

From OnnoWiki
Revision as of 08:37, 14 July 2013 by Onnowpurbo (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

tcp_wrapper adalah library yang akan membantu kita untuk memproteksi terhadap penyalahgunaan jaringan.


Kemampuan Filtering

Kita dapat menggunakan tcp_wrapper untuk

  • Filtering terhadap source address (IPv4 atau IPv6)
  • Filtering terhadap pengguna (memerlukan inet daemon di client)

Program mana yang mengunakan tcp_wrapper

Berikut ini yang di ketahui:

  • Setiap layanan yang di panggil oleh xinetd (jika xinetd di compile menggunakan library tcp_wrapper) sshd (jika dicompile menggunakan tcp_wrapper)

Penggunaan

tcp_wrapper di kontrol oleh dua file /etc/hosts.allow dan /etc/hosts.deny. Untuk informasi lebih lanjut ada baiknya membaca

$ man hosts.allow

Contoh Untuk /etc/hosts.allow

Dalam file ini, setiap layanan harus di filter secara positif (artinya sambungan akan di terima) yang di representasikan dalam kalimat:

sshd:           1.2.3. [2001:0db8:100:200::]/64
daytime-stream: 1.2.3. [2001:0db8:100:200::]/64

Catatan: ada beberapa implementasi yang tidak baik yang menggunakan deskripsi jaringan IPv6 yang tidak baik [2001:0db8:100:200::/64]. Mudah-mudahan, pada versi mendatang akan lebih baik.

Untuk /etc/hosts.deny

File ini berisi entri negatif filter, sebaiknya secara normal menolak semua dengan menggunakan perintah

ALL: ALL

Jika node yang dioperasikan ingin lebih baik kita dapat mengubah kalimat di atas dengan kalimat di bawah ini. Akan tetapi ini bisa menyebabkan serangan DoS (membebani mailer dan directory spool) jika terlalu banyak sambungan dilakukan dalam waktu yang pendek. Mungkin logwatch dapat digunakan untuk kasus seperti itu.

ALL: ALL: spawn (echo "Attempt from %h %a to %d at `date`" 
 | tee -a /var/log/tcp.deny.log | mail root@localhost)

Logging

Tergantung entri di konfigurasi syslog daemon /etc/syslog.conf tcp_wrapper log biasanya di simpan di /var/log/secure.

Penolakan Sambungan

Penolakan sambungan melalui IPv4 ke xinetd yang di lindungi oleh layanan daytime akan menghasilkan kalimat sebagai berikut

Jan 2 20:40:44 gate xinetd-ipv6[12346]: FAIL: daytime-stream libwrap
¬ from=::ffff:1.2.3.4
Jan 2 20:32:06 gate xinetd-ipv6[12346]: FAIL: daytime-stream libwrap 
 from=2001:0db8:100:200::212:34ff:fe12:3456

Penolakan sambungan melalui IPv4 ke sshd dual-listen akan menghasilkan kalimat sebagai berikut

Jan 2 20:24:17 gate sshd[12345]: refused connect from ::ffff:1.2.3.4
¬ (::ffff:1.2.3.4)
Jan 2 20:39:33 gate sshd[12345]: refused connect 
 from 2001:0db8:100:200::212:34ff:fe12:3456
¬ (2001:0db8:100:200::212:34ff:fe12:3456)

Mengijinkan Sambungan

Ijin untuk menyambungkan diri melalui IPv4 ke xinetd yang di lindungi oleh layanan daytime menghasilkan kalimat berikut

Jan 2 20:37:50 gate xinetd-ipv6[12346]: START: daytime-stream pid=0
¬ from=::ffff:1.2.3.4 
Jan 2 20:37:56 gate xinetd-ipv6[12346]: START: daytime-stream pid=0 
 from=2001:0db8:100:200::212:34ff:fe12:3456

Ijin sambungan melalui IPv4 ke semua sshd yang dual-listen sshd menghasilkan kalimat sebagai berikut

Jan 2 20:43:10 gate sshd[21975]: Accepted password for user from ::ffff:1.2.3.4
¬ port 33381 ssh2
Jan 2 20:42:19 gate sshd[12345]: Accepted password for user 
 from 2001:0db8:100:200::212:34ff:fe12:3456 port 33380 ssh2