Saya memiliki dua komputer di belakang router yang sama. Sebut saja mereka A dan B.
A dapat SSH ke B dengan cara berikut: ssh usr@<internal ip of computer>
B dapat SSH ke A dengan melakukan hal yang sama, tetapi IP eksternal harus digunakan. Saya telah meneruskan port 22 router saya ke IP komputer A, sehingga semuanya masuk akal bagi saya.
Namun, saya juga ingin meneruskan port 26 ke komputer B, dan SSH dari luar jaringan dengan menggunakan IP eksternal untuk keduanya, tetapi menentukan port 22 atau 26, untuk secara efektif memilih komputer mana yang akan digunakan.
Saya telah mencoba mengizinkan port 26 melalui OUTPUT dari iptables pada A dan INPUT B, tetapi itu tampaknya tidak berhasil. Saya juga meneruskan port 26 ke IP internal B (melalui router), seperti yang saya lakukan dengan 22 untuk A.
Inilah yang saya dapatkan ketika saya mencoba SSH dari A ke B menggunakan IP eksternal dan port 26:
ssh: connect to host xx.xx.xxx.xx port 26: Connection refused.
Versi:
A = OpenSSH_5. 9p1 Debian-5ubuntu1, OpenSSL 1.0.1 14 Maret 2012
B = OpenSSH_6. 0p1 Debian-4, OpenSSL 1.0.1 c 10 Mei 2012
A memiliki 12.04 Ubuntu, B adalah Raspberry Pi dengan Raspbian.
EDIT: sesuatu yang saya lupa masukkan: Saya mencoba mengganti file konfigurasi SSH (saya menemukannya /etc/ssh/ssh_config) Saya tidak berkomentar (menghapus #) garis dengan Port dan berubah 22 untuk 26. Ini memberi saya koneksi menolak pesan masih. (Saya reboot tidak berhasil.)
Jika Anda menggunakan sistem Linux dan Anda ingin terhubung ke server SSH pada port 26 anda dapat menggunakan perintah berikut.
ssh user@192.168.1.1 -p 26
Catatan:
Ganti ip server dengan alamat IP atau nama DNS server Anda.
Ubah nomor port Anda seperti yang telah Anda tetapkan.
jika Anda menggunakan port kustom SSH maka port yang sama paling diizinkan untuk keluar, koneksi masuk pada firewall jika tidak koneksi tidak akan terbentuk
Sepertinya Anda tidak menjalankan SSH pada port 26 pada mesin kedua. Anda dapat mengubah nomor port pada mesin itu menjadi 26.
Entah mengedit /etc/ssh/sshd_config & amp; jangan lupa untuk me-restart SSH (service sshd restart) atau biarkan pada 22, Tetapi teruskan port 26 pada router ke port 22 pada mesin kedua. Juga, jangan lupa untuk mengubah pengaturan firewall pada mesin kedua untuk memungkinkan koneksi melalui.
Saya menggunakan port 22 hanya untuk akses ssh intranet.
Untuk akses melalui internet saya menggunakan port khusus (tidak biasa).Ini memiliki manfaat saya mengurangi beban yang dihasilkan yang dihasilkan oleh script kids yang memindai port 22 untuk"nama pengguna terkenal".
The eksternal proses sshd dikendalikan oleh xinetd dan berjalan secara paralel dengan internalsshd process.In contoh berikut saya menggunakan port 12345:
Anda bebas untuk mengubah ini ke nomor port gratis yang tersedia di sistem Anda.Mungkin nilai yang lebih tinggi akan membuatnya juga sedikit lebih tidak mungkin bahwa port ini dipindai oleh "quick port scan".
The xinetd konfigurasi adalah:
service ssh-external{ socket_type = stream wait = no protocol = tcp type = UNLISTED user = root server = /usr/sbin/sshd server_args = -i -f /etc/ssh/external-sshd.config port = 12345 log_on_failure += USERID}
Berkas /etc/ssh/external-ssdh.config bisa menjadi salinan biasa Anda sshd konfigurasi.Pastikan bahwa pernyataan berikut dikonfigurasi:
Port 12345AddressFamily inet
Saya juga menyarankan untuk menegakkan otentikasi kunci publik dan menonaktifkan otentikasi kata sandi untuk akses internet:
PasswordAuthentication noPermitEmptyPasswords noChallengeResponseAuthentication no
Seperti yang telah saya jelaskan dalam sebuah jawaban terkait, klien ssh memungkinkan menentukan format URI sebagai ssh://user@host:1234. Misalnya:
ssh ssh://myuser@mydomain.com:2222
di mana 2222 adalah nomor port. Ganti Nomor port yang ingin Anda gunakan. Tentu saja, ingat bahwa untuk terhubung ke port ssh server yang ditentukan (pada host yang Anda mencoba untuk menghubungkan) harus mendengarkan pada port tertentu di tempat pertama
Bukan ide yang baik untuk menjalankan ssh pada port default (TCP/22), tidak meneruskan dari WAN IP 22 ke port apa pun yang menggunakan ssh-server pada IP LAN.
Untuk membuat ssh-server mendengarkan pada port tertentu Anda harus
Edit pada /etc/ssh/sshd_config (perhatikan d) dari #Port 22 untuk Port 26. Yaitu, Tanda Komentar dan mengubah port. Lebih baik dari 26 akan menjadi sesuatu secara acak di atas (di bawah 65535), seperti 42895. Juga pertimbangkan untuk mengubah ke PermitRootLogin no.