Asumsikan saya memiliki blok ip untuk China, Rusia, Korea Utara dll. Bagaimana saya mengkonfigurasi pf untuk memungkinkan alamat IP hanya mengakses port 80 dan 443, dan ditolak akses ke port lain?
Saya memiliki instance OS X Server 2.1.1 (alias Mountain Lion) yang berjalan di pusat data dengan alamat ip statis yang terpapar ke internet. Jadi tidak ada firewall perangkat keras dll untuk melindungi server terhadap pengguna jahat.
Melihat melalui log, saya melihat banyak upaya gagal dari negara-negara seperti Cina, Rusia ke layanan yang diperlukan bagi saya untuk mengelola server dari jarak jauh. Selanjutnya, saya perhatikan bahwa port tidak perlu terbuka ke internet.
Sejak OS X 10.6 Snow Leopard Server, saya menggunakan Server Admin untuk mengelola firewall (ipfw). Ini telah dihapus di OS X Server 2.1.1 (Mountain Lion). Dan untuk membuat masalah lebih menarik, dokumentasi Apple menyatakan bahwa ipfw sudah tidak digunakan lagi dan menggunakan pf sebagai gantinya. Setelah membaca halaman manual, saya sedikit bingung bagaimana mengkonfigurasi pf.
Googling "pf firewall tutorial" mengungkapkan tutorial yang ditujukan untuk NetBSD, FreeBSD dan OpenBSD. Pemfilteran lebih lanjut pada "OS X" dalam kueri itu mengungkapkan tutorial untuk "OS X", tetapi tampaknya penulis mengasumsikan pengetahuan sebelumnya.
sumber
Jawaban:
Anda harus:
mengerti dasar-dasar pf - di sini ada banyak panduan di Internet, Anda dapat dengan aman membaca panduan BSD Terbuka / Gratis. Anda harus memahami beberapa hal mendasar:
pfctl
perintah menggunakanman pfctl
man pf.conf
SETELAH ini, Anda dapat menggunakan dua antarmuka GUI
PF tidak terlalu sulit jika Anda memiliki pengetahuan tentang cara firewall bekerja secara umum.
Fragmen
pf.conf
untuk penyaringan berbasis tabel:Contoh di atas berisi:
noroute
untuk alamat yang tidak dapat ditutup (RFC 1918) dan yang keduabadips
yang dapat berisi alamat IP berbasis Geo IP Andabadips
(aturan terakhir menang)sumber
Bukankah serveradmin di 10.8 memungkinkan Anda memuat grup alamat dari baris perintah? Seperti, misalnya:
eu.txt:
Edit:
Ketika
serveradmin
gagal, gunakan/Applications/Server.app/Contents/ServerRoot/usr/sbin/serveradmin
.sumber
Coba WaterRoof, ini IPFW dengan GUI: http://www.hanynet.com/waterroof/
sumber