Shorewall - Firewall tingkat tinggi untuk mengonfigurasi server Linux

Shorewall - Firewall tingkat tinggi untuk mengonfigurasi server Linux

Menyiapkan firewall di Linux bisa sangat menakutkan bagi seorang pemula, atau untuk seseorang yang tidak terlalu akrab ptable. Untungnya, ada solusi yang sangat mudah digunakan Shorewall.

Instal Firewall Shorewall di Linux

Dalam tutorial multi-bagian ini, saya akan membantu Anda memulai Shorewall, dan memandu Anda melalui beberapa topik yang lebih canggih dengan sistem firewall yang luar biasa ini.

Apa itu Shorewall?

Shorewall pada dasarnya adalah front-end ke ptables, tetapi ini adalah ujung front-end lingkungan perintah yang memanfaatkan sejumlah file teks untuk konfigurasinya. Ketika Shorewall adalah sistem firewall yang kuat yang dapat diskalakan di atas jaringan yang sangat besar melayani banyak mesin, kami akan memulai dengan konfigurasi dua antarmuka dasar dan memaku dasar-dasarnya.

Konfigurasi dua antarmuka terdiri dari mesin dengan dua port Ethernet, satu masuk, dan satu pergi ke jaringan lokal.

Instalasi Shorewall di Linux

Shorewall dapat diinstal menggunakan alat manajer paket apt-get dan yum.

Di debian/ubuntu/linux mint
$ sudo apt-get install shorewall6
Di rhel/centos/fedora
$ sudo yum menginstal shorewall6

Setelah instalasi, kita perlu menyalin konfigurasi sampel dari “/usr/share/doc/shorewall"Direktori ke Direktori Default Shorewall"/etc/shorewall ".

$ sudo cp/usr/share/doc/shorewall/example/two-interfaces/*/etc/shorewall

Dan kemudian CD ke /etc /shorewall.

$ cd /etc /shorewall

Jika kita melihat di direktori ini, kita melihat banyak file dan Shorewall.conf mengajukan. Shorewall memandang jaringan sebagai sekelompok zona yang berbeda, jadi file pertama yang ingin kami lihat itu adalah “/etc/shorewall/zonaFile.

Zona

Di sini, kita melihat bahwa ada tiga zona yang ditentukan secara default: bersih, loc, Dan semua. Penting untuk dicatat itu Shorewall Memperlakukan mesin firewall itu sendiri sebagai zona sendiri dan menyimpannya dalam variabel yang disebut $ Fw. Anda akan melihat variabel ini di seluruh file konfigurasi lainnya.

The "/etc/shorewall/zonaFile cukup jelas. Kamu punya zona bersih (antarmuka yang menghadap ke internet), loc daerah (LAN menghadap antarmuka), dan semua, Itu adalah segalanya.

Kebijakan

Pengaturan ini menyerah yang berikut:

  1. Itu memungkinkan semua permintaan koneksi dari Zona LOC (Lan) ke zona bersih (Internet).
  2. Menjatuhkan semua permintaan koneksi (mengabaikan) dari zona bersih ke Firewall dan Lan.
  3. Menolak dan mencatat semua permintaan lainnya.

Itu Level log Bit harus akrab bagi siapa saja yang telah melakukan administrasi Apache, Mysql, atau sejumlah lainnya Foss program. Dalam hal ini, kami memberi tahu Shorewall untuk menggunakan Level Info logging.

Jika Anda ingin memiliki firewall Anda untuk dikelola dari LAN Anda, Anda dapat menambahkan baris berikut ke “/etc/shorewall/kebijakanFile.

#Source Dest Policy Level Level: Burst loc $ fw terima $ fw loC terima

Sekarang zona dan kebijakan kita ditetapkan, kita harus mengkonfigurasi antarmuka kita. Anda melakukan ini dengan mengedit “/etc/shorewall/antarmukaFile.

Antarmuka

Di sini, kami telah menetapkan antarmuka menghadap internet kami eth0 ke zona bersih. Di sisi LAN kami, kami telah mengatur antarmuka lainnya, Eth1, ke Zona LOC. Harap sesuaikan file ini untuk menembakkan konfigurasi Anda dengan benar.

Berbagai opsi yang dapat Anda tempatkan untuk salah satu antarmuka ini sangat luas, dan paling baik dijelaskan secara rinci di halaman Manusia.

$ MAN SHOREWALL-INTERFACES

Lari cepat beberapa dari mereka adalah sebagai berikut:

  1. nosmurfs - Paket filter dengan alamat siaran sebagai sumber.
  2. Logmartians - Paket log dengan alamat sumber yang mustahil.
  3. RouteFilter - penyaringan rute kernel untuk anti-spoofing.

Tentu saja, sekarang sistem kami firewalled, kami akan membutuhkan koneksi tertentu untuk diizinkan untuk mendapatkan apa yang perlu kami lakukan. Anda mendefinisikan ini dalam file aturan di “/etc/shorewall/aturan“.

Aturan

File ini terlihat membingungkan pada awalnya, terutama karena kolom tumpang tindih, tetapi headernya cukup jelas. Pertama, Anda memiliki Kolom aksi, yang menggambarkan apa yang ingin Anda lakukan.

Selanjutnya, Anda memiliki file SUMBER header tempat Anda mendefinisikan daerah Dimana Paket Berasal. Kemudian, Anda memiliki Dest, atau tujuan, yang mana daerah atau alamat IP tujuan. Mari kita gunakan contoh.

Misalkan Anda ingin menjalankan Ssh server di belakang firewall Anda di mesin dengan alamat IP 192.168.1.25. Anda tidak hanya harus membuka port di firewall Anda, tetapi Anda harus memberi tahu firewall bahwa lalu lintas apa pun yang datang di port 22 perlu dialihkan ke mesin di 192.168.1.25.

Ini dikenal sebagai Penerusan Port. Ini adalah fitur umum di sebagian besar Firewall/router. Di dalam "/etc/shorewall/aturan“, Anda akan mencapai ini dengan menambahkan garis seperti ini:

Ssh (dnat) net loc: 192.168.1.25
Penerusan port SSH

Di atas, kami telah menentukan apapun Ssh Paket yang ditakdirkan datang dari zona bersih ke firewall harus diarahkan (Dnat) ke port 22 di mesin dengan alamat 192.168.1.25.

Ini disebut Terjemahan Alamat Jaringan atau Nat. The "D"Cukup memberi tahu Shorewall bahwa ini adalah a Nat untuk alamat tujuan.

Agar ini berhasil, Anda harus memilikinya Nat Dukungan diaktifkan di kernel Anda. Jika Anda membutuhkan Nat Dan tidak memilikinya, silakan lihat tutorial saya tentang mengkompilasi ulang kernel Debian.

Tautan referensi

Beranda Shorewall

Pada artikel berikutnya, kami akan berjalan melalui beberapa topik yang lebih maju, tetapi harus ada banyak di sini untuk memulai Anda untuk saat ini. Seperti biasa, harap lihat halaman pria untuk pemahaman yang lebih mendalam.

Baca juga : Menjelajahi Konfigurasi Firewall Shorewall dan Opsi Baris Perintah