Bagaimana cara membuka port tertentu di firewall? Saya tidak dapat menggunakan "izinkan koneksi dari aplikasi" karena saya ingin membuka port untuk Jenkins, yang tidak ada dalam daftar ...
ipfw
relevan? apple.stackexchange.com/questions/33871/...
Bagaimana cara membuka port tertentu di firewall? Saya tidak dapat menggunakan "izinkan koneksi dari aplikasi" karena saya ingin membuka port untuk Jenkins, yang tidak ada dalam daftar ...
ipfw
relevan? apple.stackexchange.com/questions/33871/...
Jawaban:
OS X Mavericks Apple berisi tiga firewall. Pertama-tama, Application Level Firewall yang dapat dikonfigurasi menggunakan pengaturan sistem. Tetapi ada juga ipfw, firewall packet filtering seperti netfilter / iptables di GNU / Linux dan pf (FreeBSD / OpenBSD).
Anda dapat mengkonfigurasi ipfw menggunakan baris perintah, atau menggunakan front-end grafis seperti WaterRoof gratis / gratis .
Anda bisa mulai dengan perintah ipfw seperti:
sudo ipfw add 31010 allow tcp from any to any dst-port 8080
Saya memiliki masalah yang sama di bawah OS X Yosemite (10.10.3). Ditemukan posting blog ini yang memberikan instruksi jelas. Kami tidak dapat menggunakan ipfw lagi, karena sudah usang. Sebagai gantinya, gunakan pfctl, yang sayangnya tidak memiliki cara baris perintah yang bagus untuk mengatakannya untuk membuka port. Sebaliknya, Anda perlu:
# Buka port 8080 untuk TCP pada semua antarmuka
lewat proto tcp dari sembarang ke port 8080
sudo pfctl -f /etc/pf.conf
Jika Anda perlu membuka port udp, ubah tcp
ke udp
, jika Anda membutuhkan keduanya, tambahkan baris kedua. Detail tambahan dapat ditemukan di man pf.conf
.
Pastikan juga server Anda mendengarkan pada antarmuka aktual yang Anda inginkan dapat diakses melalui (atau semua antarmuka, menggunakan 0.0.0.0
atau ::0
), bukan localhost ( 127.0.0.1
atau ::1
).
-n
ke pfctl memverifikasi aturan, dan jelas tidak memuatnya. Gunakan hanya -f /etc/pf.conf
untuk memuat aturan. Pastikan sudah dimuat pfctl -sr
. Namun, sementara aturan pfctl diperlukan, itu tidak muncul dengan sendirinya cukup untuk memungkinkan akses ke El Capitan pada port tertentu.
localhost
); satu mendapat nama host dengan $ hostname
di baris perintah. Juga, seseorang dapat memulai ulang firewall, alih-alih me-reboot, dengan masuk ke System Preferences -> Security & Privacy -> Firewall -> Matikan Firewall dan kemudian Nyalakan Firewall.
ipfw sudah ditinggalkan oleh Apple. Mountain Lion dan kemudian gunakan pfctl.
Berikut adalah satu liner daripada mengharuskan pengguna untuk dipusingkan dengan Vim. Berguna untuk otomasi.
sed -i '' -e '$a\pass in proto tcp from any to any port 8080' /etc/pf.conf; pfctl -vnf /etc/pf.conf
Atau alternatif untuk pengguna Linux
sed -i -e '$a\pass in proto tcp from any to any port 8080' /etc/pf.conf; pfctl -vnf /etc/pf.conf
Pastikan Anda berubah 8080
dalam contoh menjadi apa pun yang ada dalam pikiran Anda. Tukar tcp dengan udp jika Anda suka.