ssh nongkrong maka waktu habis

8

Saya baru mengenal ssh di linux. Saya memiliki dua komputer yang terhubung pada sebuah saklar. Yang pertama adalah 192.168.1.2 dan yang kedua adalah 192.168.1.3. Ketika saya menggunakan pingperintah saya mendapat balasan dan semuanya baik-baik saja, tetapi ketika saya menggunakan ssh dari komputer frist ssh -v [email protected]itu memberi saya,

OpenSSH_5.8p1 Debian-1ubuntu3, OpenSSL 0.9.8o 01 Jun 2010
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.1.2 [192.168.1.2] port 22.
debug1: connect to address 192.168.1.2 port 22: Connection timed out

Saya telah menginstal ssh di kedua mesin. Ada ide tentang bagaimana saya bisa memperbaiki masalah ini?

sam
sumber

Jawaban:

1

Periksa hal-hal ini:

  • Port 22 terbuka dan dapat menerima koneksi
  • Pastikan OpenSSH atau proses SSH lain berjalan di server
  • Pastikan file konfigurasi SSH diberi nilai yang sesuai

sumber
10
mmm man sshd_config |grep -i appropriatemuncul kosong di semua kotak linux saya, dan Solaris juga
sehe
@sehe File tidak terletak di / etc / ssh /?
3
Ini membuat saya <headdesk /> bahkan ketika berada di tempat tidur. Sarkasme gagal. Apa yang saya (dengan mengolok-olok) disarankan, adalah dokumentasi tidak berisi info tentang pengaturan yang sesuai
lihat
terima kasih untuk semua, sebenarnya port 22 sudah dekat jadi saya telah memasukkan perintah ini [code] iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 22 -j ACCEPT [/ code]
sam
Terima kasih @norway, saya menghadapi masalah yang sama. Bagaimana saya dapat memeriksa hal-hal itu? Saya menggunakan Hosting Berbagi Pakai. Terima kasih.
abu abu
3

Kiat pemecahan masalah:

  • Bisakah Anda ssh localhostdi server?
  • Apakah pengguna diizinkan? ( AllowUserspengaturan)
  • Apakah Anda mengikat NIC eksternal? (cari ListenAddress 0.0.0.0atau ListenAddress ::)
  • Apakah Anda menjalankan pada port 22? ( Port)

    • Pada dasarnya periksa /etc/ssh/sshd_config.
  • Ditambahkan : Anda dapat menggunakan netstat -tlpn | grep 22untuk mengetahui program apa (jika ada) yang mendengarkan pada port 22 ( jalankan sebagai root untuk melihat nama proses ).

Juga, pertimbangkan untuk menggunakan koneksi port eksplisit alih-alih ping (misalnya nmap -PN remote -p22atau bahkan hanya telnet remote 22)

lihat
sumber
1

Saya tahu, pertanyaannya adalah tentang jaringan pribadi, tetapi saya memiliki hasil yang sama ketika saya mencoba mengakses perangkat melalui Internet. Setelah googling, saya menemukan pertanyaan ini; jadi, meskipun, itu mungkin tidak menjawab pertanyaan, orang lain mungkin menemukan jawaban saya bermanfaat. Dalam kasus saya, ternyata ISP saya memblokir port 22 / TCP.

Jika Anda mencoba mengakses perangkat melalui Internet, pada dasarnya ada lima kemungkinan:

  1. Koneksi jaringan mungkin tidak terjadi di antara mesin. Coba ping alamat IP mesin server. Jika Anda tidak dapat menerima paket apa pun, maka coba periksa koneksi jaringan pada kedua mesin.
  2. Server SSH mungkin salah konfigurasi. Coba SSH ke perangkat secara lokal (dari perangkat dan pengguna yang sama ke perangkat dan pengguna yang sama) melalui:

    ssh localhost
    
  3. Jika mesin server terhubung ke Internet melalui router, penerusan port mungkin tidak dikonfigurasi dengan tepat. Jadi, periksa konfigurasi penerusan port pada router Anda.

  4. Firewall lokal pada mesin server mungkin memfilter koneksi masuk keluar. Coba izinkan koneksi masuk pada port 22 / TCP dalam aturan firewall Anda atau nonaktifkan firewall untuk sementara waktu.
  5. Satu atau kedua ISP mungkin memfilter koneksi keluar. Coba ubah port pada server menjadi sesuatu seperti 2222, restart server SSH, dan SSHing menggunakan port baru. Anda dapat menentukan port pada mesin klien melalui -popsi dalam perintah seperti ini:

    ssh USER@HOST -p PORT
    
Giorgi Gzirishvili
sumber
0

Pertama, periksa apakah SSH berjalan pada sisi penerima. Masuk ke mesin jarak jauh dan coba ssh ke localhost (ssh ke mesin yang sama dengan tempat Anda berada).

ssh -v myUserName@localhost

Ini akan meminta kata sandi Anda dan kemudian akan membuat Anda masuk ke mesin yang sama. Jika ini tidak berhasil, itu berarti bahwa host ini tidak mengaktifkan SSH. Mengaktifkan "login jarak jauh" di server ini akan memperbaiki masalah.

Namun jika Anda berhasil ssh dari server target ke dirinya sendiri dengan sukses, maka masalah ini kemungkinan ada di suatu tempat di tengah. Hal berikutnya yang Anda periksa adalah firewall pada host sumber untuk memastikan mereka tidak memblokir ssh.


sumber
1
Saya sebut tangan-waivy: Enabling "remote login"sebenarnya tidak berarti apa-apa. Memperbaiki masalah juga harus mengaktifkan "login jarak jauh", FWIW
sehe
0

Jika openssh-server sudah diinstal, bisa jadi pemblokiran firewall ... dengan anggapan Anda mengaktifkan ufw.

Jika Anda beralih dari mesin 192.168.1.2 ke mesin target 192.168.1.3. Pada mesin target lakukan ... Sudo ufw izinkan dari 192.168.1.2. Dan sebaliknya visa akan berguna

stu
sumber
0

[Ini jawaban pertama saya, saya minta kritik yang membangun jika diperlukan. Terima kasih. :)]

Bisa jadi Anda dilarang dari mesin target, misalnya karena Anda memberi kata sandi yang salah beberapa kali.

Edit /etc/fail2ban/jail.localpada mesin target ( 192.168.1.3dalam kasus Anda). Ini dapat dilakukan jika Anda dapat sshke mesin ini dari yang lain di mana Anda tidak dilarang.

Lengkapi baris di ignoreipbawah [DEFAULT]dengan alamat IP mesin sumber Anda:

[DEFAULT]

ignoreip = 192.168.1.2
Bálint Sass
sumber
-1

Periksa hal-hal berikut:

1) Jalankan localmap nmap dan periksa status port 22

2) Di komputer kedua yang ingin Anda sambungkan melalui ssh, lakukan ssh localhost

Taimoor
sumber