Bagaimana saya bisa membuka port (bukan aplikasi) di firewall OS X 10.6?

18

Saya perkenalkan ini dengan mengatakan:

  • Saya tidak ingin menjatuhkan firewall saya sepenuhnya
  • Ya, saya benar-benar membutuhkan port tertentu daripada aplikasi.

Jadi saya melihat bahwa ada opsi untuk mengizinkan aplikasi tertentu melalui firewall, tetapi tidak ada cara yang setara untuk membuka port. Tampaknya sulit untuk percaya bahwa ini sebenarnya tidak mungkin. Bagaimana saya bisa membuka port TCP tertentu di OS X 10.6 sambil tetap menjaga port lainnya dari firewall?

kdt
sumber

Jawaban:

11

Bekerja untukku.

Saya ingin membuka lalu lintas di port 70, jadi saya memasukkan yang berikut ini:

sudo ipfw add 7000 allow tcp from any to any dst-port 70

Tanggapan dari command-prompt adalah:

07000 allow tcp from any to any dst-port 70

Ya, 0 secara otomatis ditambahkan ke aturan #, jadi perlu dicatat bahwa ID aturan apa pun <10.000 akan diawali oleh satu atau lebih nol.

Applemeister
sumber
Rupanya perintah ini hilang di 10.10 (Yosemite).
jcollum
6

Firewall builtin yang digunakan oleh OS X adalah ipfw. Untuk mempelajari lebih lanjut tentang hal itu dari Terminal, Anda dapat masuk man ipfw.

Untuk membuat aturan firewall baru untuk memungkinkan lalu lintas masuk ke port tertentu Anda dapat memasukkan aturan dari Terminal sebagai berikut.

sudo ipfw add 40000 allow tcp from any to any dst-port portnum

di mana portnumnomor port yang ingin Anda buka. Dalam hal ini saya telah menambahkan suatu aturan 40000 ke aturan sehingga jika Anda ingin menghapusnya, perintah berikut ini sudah cukup.

sudo ipfw delete 40000

Jika Anda memasukkan perintah, sudo ipfw listAnda akan melihat perintah yang aktif. Untuk memuat ulang masalah firewall perintahsudo ipfw flush

Jika Anda ingin membuat log hit, Anda dapat menambahkan logperintah sebagai berikut,sudo ipfw add 40000 allow log ...

Saya memilih ruleenum 40000 agak sewenang-wenang karena ada aturan 1-65535, meskipun angka-angka tertentu istimewa. Ini hanya membuatnya lebih mudah untuk menghapus aturan nanti, jika diperlukan.

afragen
sumber
Mencoba solusi di atas dan mendapatkan kesalahan: ipfw: hostname `` dst-port '' tidak diketahui
Apa yang sebenarnya Anda masukkan?
afragen
Seperti yang saya tulis di atas, Anda perlu menentukan nomor port sebenarnya portnumtetapi dst-portsudah benar. Silakan merujuk ke halaman manual untuk ipfw.
afragen