it-swarm.asia

Cara membuat port forward di Mac OS X

Saya ingin membuat semua koneksi masuk ke port 1000 dari Host saya (IP: 200.234.XXX.XXX) untuk diteruskan ke port 80 pada Host 10.211.55.5

Bagaimana saya bisa melakukannya di host saya? Ini menjalankan Mac OS X 10.5.8

33
Daniel Cukier

Cukup sederhana untuk dilakukan, Pertama Anda harus mengaktifkan layanan login jarak jauh pada mac Anda (System Preferences -> Berbagi -> Remote Login) . Ini memulai server ssh Anda.

Kemudian jalankan perintah berikut di Terminal OS X Anda:

ssh -L 200.234.XXX.XXX:10000:10.211.55.5:80 -N 127.0.0.1

Anda mungkin harus menerima sidik jari server terlebih dahulu dan juga mengetikkan kata sandi lokal Anda untuk login ssh. (Anda juga dapat mengatur kunci publik/privat ssh lokal ke lokal untuk membuatnya bukan Meminta kata sandi, akan menjadikannya sebagai latihan bagi pembaca.)

Formatnya adalah:

ssh -L local_addr:local_port:remote_addr:remote_port -N 127.0.0.1
28
Marius

Sangat sederhana menggunakan alat serbaguna ncat:

Sudo ncat --sh-exec "ncat 10.211.55.5 80" -l 1000 --keep-open

Dapatkan binari ncat/nmap untuk Mac OS X dari situs web resmi: http://nmap.org/download.html#macosx

EDIT: menambahkan Sudo untuk mendengarkan pada port terbatas <1024

8
Tony Baguette

Dengan asumsi Anda memiliki router UPnP, mudah untuk mengkonfigurasi port dengan menggunakan PortMap

Ini memiliki UI yang sangat sederhana.

alt text

5
Alexis Hirst

Baiklah, saya dapat memberitahu Anda bagaimana saya melakukan hal semacam itu pada sistem Mac OS X 10.5.8 saya.

Saya mulai dengan jawaban tentang NAT, tetapi saya pikir Anda benar-benar menginginkan program penerusan TCP (Anda menyebutkan 'proxy' dan penerusan porta.)

Ada beberapa cara untuk melakukan ini, tergantung pada kebutuhan Anda bahkan 'SSH' dapat ditekan ke dalam tindakan, meskipun cara pendek dan manis favorit saya adalah skrip Perl tcpforward .

Jika Anda memerlukan manipulasi HTTP (Anda mungkin perlu Tweak pengalihan HTTP, sehingga ketika permintaan datang untuk URL tanpa trailing '/' Anda tidak dapat diarahkan ke server yang nyata, tidak dapat diakses,), maka Apache dapat melakukan pekerjaan proxy terbalik. Anda ingin melihat mod_proxy dan secara khusus ProxyPass dan ProxyPassReverse. Do not mengaktifkan ProxyRequests, itu untuk meneruskan proxy. Seharusnya dimungkinkan untuk menggunakan Apache Mac OS sendiri untuk melakukan ini, jika Anda sudah menjalankannya. Itu datang dengan mod_proxy dan /etc/httpd/httpd.conf adalah file konfigurasi untuk memperbarui.

Bahkan dengan Apache, Anda perlu memastikan bahwa semua tautan di konten server nyata adalah relatif, jika mereka mereferensikan server sebenarnya maka Anda dapat mencoba modul mod_proxy_html (saya tidak memiliki pengalaman tentang seberapa baik kerjanya).

3
jrg