SSH "koneksi ditolak" pada Raspberry pi - tidak dapat menemukan alasannya

13

Saya memiliki masalah berikut SSH "koneksi ditolak". Ini akan berfungsi dengan baik, tetapi ketika saya sedang mengerjakan SSH, saya akan mendapatkan "koneksi ditolak" dan harus terhubung kembali (yang tidak terjadi selama 5-10 menit baik). Saya sudah mencoba semuanya (restart linux, restart ssh) namun tetap tidak membantu. Saya telah memeriksa var / log juga tetapi tidak ada yang membantu di sana ...

CATATAN: Catatan menarik yang saya temukan adalah, ketika saya mencoba ssh ke ip eksternal saya (277 ...), ia pergi ke layar cmd hitam, saya menutup ini dan mencoba alamat 192.168.0.13 saya dan itu memungkinkan saya masuk .. tapi pendek sementara, lagi koneksi ditolak ... Tentu saja jika saya membuka server saya dan sudo sshd restart, ssh "koneksi saya ditolak" hilang ...

Port ssh saya dibuka pada 23, dan saya sudah mengaturnya di modem / router juga

sudpi@raspberrypi:~$ sudo netstat -tlpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1817/apache2
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      2227/vsftpd
tcp        0      0 127.0.0.1:3350          0.0.0.0:*               LISTEN      1784/xrdp-sesman
tcp        0      0 0.0.0.0:23              0.0.0.0:*               LISTEN      3115/sshd
tcp        0      0 0.0.0.0:3389            0.0.0.0:*               LISTEN      1781/xrdp
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      2397/mysqld

Ketika saya terputus, dan masuk kembali dan periksa "SIAPA" Saya hanya melihat koneksi saya sebelumnya, root saya dan koneksi saat ini

whopi@raspberrypi:~$ who  
pi       tty1         2013-01-28 09:20
pi       pts/0        2013-01-28 10:28 (192.168.0.12)
pi       pts/1        2013-01-28 10:32 (192.168.0.12)

Ini adalah apa yang saya miliki di ssh_config saya yang telah saya ubah (SSH ke 23 karena rogers menggunakan 22 ...)

#   Port 23
...    
#Keep my damn connection alive!
KeepAlive yes
ServerAliveInterval 60

Inilah yang saya dapatkan ketika saya menjalankan arp-scan

pi@raspberrypi:/etc$ sudo arp-scan -I eth0 -l | grep 192.168.0.13
192.168.0.13    a0:6c:ec:ec:bb:5b       (Unknown)

Bagian ini saya temukan online yang mengatakan saya harus memposting dua informasi berikut

pi@raspberrypi:~$ ps afxu | grep sshd
root      2838  0.0  0.7   9800  3168 ?        Ss   10:27   0:00 sshd: pi [priv]                                                                                   
pi        2845  0.0  0.3   9800  1628 ?        S    10:28   0:00  \_ sshd: pi@pt                                                                                   s/0
root      2854  0.0  0.7   9800  3168 ?        Ss   10:32   0:00 sshd: pi [priv]                                                                                   
pi        2861  0.0  0.3   9800  1628 ?        S    10:32   0:00  \_ sshd: pi@pt                                                                                   s/1
root      2900  0.3  0.7   9800  3168 ?        Ss   10:44   0:00 sshd: pi [priv]                                                                                   
pi        2907  0.0  0.3   9800  1628 ?        S    10:44   0:00  \_ sshd: pi@pt                                                                                   s/2
root      2934  0.0  0.2   6204  1060 ?        Ss   10:45   0:00 /usr/sbin/sshd
root      2954  0.7  0.7   9800  3164 ?        Ss   10:45   0:00  \_ sshd: pi [p                                                                                   riv]
pi        2961  0.1  0.3   9800  1624 ?        S    10:46   0:00      \_ sshd: p                                                                                   i@pts/3
pi        2970  0.0  0.1   3536   796 pts/3    S+   10:46   0:00              \_                                                                                    grep sshd

EDIT: pi @ raspberrypi: ~ $ ssh -vvv 192.168.0.13 (INI mungkin lama ... Terima kasih Bart Friederichs)

pi@raspberrypi:~$ ssh -vvv 192.168.0.13 -p 23
OpenSSH_6.0p1 Debian-3, OpenSSL 1.0.1c 10 May 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.0.13 [192.168.0.13] port 23.
debug1: Connection established.
debug1: SELinux support disabled
...
debug1: match: OpenSSH_6.0p1 Debian-3 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.0p1 Debian-3
debug2: fd 3 setting O_NONBLOCK
debug3: put_host_port: [192.168.0.13]:23
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
...
debug1: Next authentication method: publickey
debug1: Trying private key: /var/www/.ssh/id_rsa
debug3: no such identity: /var/www/.ssh/id_rsa
debug1: Trying private key: /var/www/.ssh/id_dsa
debug3: no such identity: /var/www/.ssh/id_dsa
debug1: Trying private key: /var/www/.ssh/id_ecdsa
debug3: no such identity: /var/www/.ssh/id_ecdsa
debug2: we did not send a packet, disable method
debug3: authmethod_lookup password
debug3: remaining preferred: ,password
debug3: authmethod_is_enabled password
debug1: Next authentication method: password
[email protected]'s password: - I TYPED PASSWORD -
...
debug2: channel_input_status_confirm: type 99 id 0
debug2: PTY allocation request accepted on channel 0
debug2: channel 0: rcvd adjust 2097152
debug2: channel_input_status_confirm: type 99 id 0
debug2: shell request accepted on channel 0
Linux raspberrypi 3.6.11+ #350 PREEMPT Mon Jan 7 21:51:11 GMT 2013 armv6l
pengguna5673
sumber
Jalankan netstat -tlpnsebagai root (atau dengan sudo) jika Anda ingin melihat nama program / PID. Memindahkan SSH dari port defaultnya tampaknya bukan ide yang baik jika Anda tidak cukup mengenal administrasi Linux.
Bruno
1
Baris yang dimulai dengan # adalah komentar, jadi pada baris Anda menentukan port 23 Anda memiliki # sebelumnya, itu tidak akan diproses, dan karena itu akan menggunakan port standar (22). Anda juga dapat memiliki sesuatu di /etc/hosts.allow atau /etc/hosts.deny mengendalikan siapa yang dapat terhubung ke sshd. Apakah Anda telah memeriksa jika Anda tidak memiliki tabrakan dengan alamat ip di jaringan Anda?
Pipa

Jawaban:

8

Anda sshd sedang mendengarkan pada port 23, namun Anda terhubung ke port 22 (default ssh).

Coba ini:

  pi@raspberrypi:~$ ssh -vvv 192.168.0.13 -p 23

Kesalahan "koneksi ditolak" berarti lapisan TCP pada kernel tidak menerima koneksi apa pun pada port itu. Itu tidak ada hubungannya dengan mempertahankan hidup atau apapun.

Juga, Anda menggunakan arpuntuk mencari tahu hal-hal, tetapi alat yang lebih baik nmap. arphanya memberi tahu Anda jika IP ada dalam domain siaran Anda, bukan jika ada port yang terbuka.

Bart Friederichs
sumber
Halo, Terima kasih atas balasan Anda, saya sudah mencoba pi @ raspberrypi: ~ $ nmap -bash: nmap: perintah tidak ditemukan ... apakah saya harus menginstalnya? dan apakah ada seperti untuk raspberry? Juga terima kasih atas koreksinya, saya telah mengedit dengan -p 23, tetapi tidak memiliki apa pun yang tampak tidak pada tempatnya ...
nmaptidak benar-benar dibutuhkan, hanya alat yang berguna. Pembaruan yang Anda buat tampaknya membuatnya berfungsi?
Bart Friederichs
5

Mengutip dokumentasi :

Pada rilis November 2016, Raspbian memiliki server SSH dinonaktifkan secara default. Anda harus mengaktifkannya secara manual.

Untuk mengaktifkan SSH pada mesin melalui konsol:

Masukkan sudo raspi-configdi terminal, pilih dulu advanced options, lalu navigasikan ke ssh, tekan Enterdan pilih Enable or disable ssh server.

Untuk mengaktifkan SSH untuk mesin tanpa kepala:

Untuk pengaturan tanpa kepala, SSH dapat diaktifkan dengan menempatkan file bernama ssh, tanpa ekstensi apa pun, ke partisi boot kartu SD.


Salin-disisipkan dari jawaban @ TechTraf dalam pertanyaan terkait ini: SSH tidak bekerja dengan instalasi baru .

Delgan
sumber
Sementara ini mungkin secara teknis menjawab pertanyaan, saya tidak yakin techraf akan senang bahwa Anda baru saja menyalin dan menempelkan jawaban mereka. Namun, jika Anda meminta izin sebelum membuat posting ini, itu akan berbeda.
Darth Vader
1
Bagian dari "persyaratan layanan" (bagian 3) adalah bahwa kontribusi di sini dianggap memiliki lisensi Creative Commons Attribution ShareAlike , dan penyesuaian kembali ini berada dalam persyaratan tersebut. Namun, ini tidak banyak jawaban di sini karena cukup jelas dalam pertanyaan yang sshdsedang berjalan, dan masalah ini sebelum 2016.
goldilocks
@DarthVader Saya memposting ini sebagai jawaban komunitas, mengkredit penulis dengan benar, saya pikir itu sudah cukup.
Delgan
1
@goldilocks Seperti yang sudah Anda duga, pertanyaan ini muncul di bagian atas hasil pencarian Google tentang ssh connexion yang ditolak untuk Raspberry Pi. Saya percaya ini akan membantu orang untuk mencari tahu lebih cepat apa yang bisa menjadi masalah.
Delgan
Pada konfigurasi SSH terbaru (Peregangan Raspbian) terletak di bawah 5) Opsi Antarmuka -> P2) SSH
R2RT
1

Saya memiliki masalah yang sama pagi ini, dan memperbaikinya dengan menghapus dan menginstal openssh-server:

sudo apt-get remove openssh-server 
sudo apt-get install openssh-server
Brian Leung
sumber
Halo dan Selamat Datang di Stack Exchange! Silakan pertimbangkan untuk menambahkan penjelasan yang lebih mendalam untuk kepentingan pembaca masa depan.
NULL
0

Saya memiliki masalah yang sama dan solusi saya adalah menonaktifkan dan menghapus iptables.

jalankan perintah itu:

(sebagai sudoer)

iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -t mangle -F iptables -t mangle -X iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT

sudo apt-get remove --purge iptables

Jibrilat
sumber
0

Bagi saya yang berikut ini berfungsi: buka / etc / ssh / ssh_config dan / etc / ssh / sshd_config dan kemudian diizinkan akses tanpa kata sandi.

Mulai ulang layanan dan voila, bekerja!

Mário Coelho
sumber
0

Memperbarui jawaban Delgan untuk Raspberry pi 3, RASPBIAN JESSIE WITH PIXEL OS

Di terminal

sudo raspi-config 

Pilih opsi Antarmuka -> SSH. Tekan Enter dan pilih Enable atau disable ssh server

pengguna65260
sumber
0

Saya tidak yakin apakah tip saya akan membantu. Saya memiliki masalah yang sama dan saya baru di dunia linux. Setelah membaca dokumentasi Raspberry Pi saya menemukan bahwa masalahnya ada di Konfigurasi Pi di mana SSH dinonaktifkan.

Klik pada Raspberry Pi Menu -> Preferences -> Launch Raspberry Pi Configuration Buka tab Interfaces Pilih Diaktifkan di sebelah SSH Klik OK. Ini menyelesaikan masalah saya. Tolong coba dan beri tahu saya.

JAYARAJ SIVADASAN
sumber
-1

dengan

sudpi@raspberrypi:~$ sudo netstat -tlpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1817/apache2
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      2227/vsftpd
tcp        0      0 127.0.0.1:3350          0.0.0.0:*               LISTEN      1784/xrdp-sesman
tcp        0      0 0.0.0.0:23              0.0.0.0:*               LISTEN      3115/sshd
tcp        0      0 0.0.0.0:3389            0.0.0.0:*               LISTEN      1781/xrdp
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      2397/mysqld
pengguna5673
sumber
Ini adalah awal yang baik untuk memeriksa apa masalahnya, tetapi tidak cukup untuk menjawab pertanyaan :-(
Morgan Courbet
-1

Saya memiliki masalah yang sama tetapi diselesaikan setelah saya menjalankan perintah

sudo apt-get remove --purge iptables. dan mematikan konektivitas nirkabel.

pengguna14634
sumber
-1

Ada 2 file konfigurasi / etc / ssh / ssh_config dan / etc / ssh / sshd_config

Ubah port dari 22 menjadi apa pun yang Anda inginkan di kedua file.

mulai ulang layanan sudo service ssh restart

Adam
sumber
Tapi ... itu hanya akan berfungsi jika ssh Anda: masuk ke mesin yang sama. Apa gunanya itu?
Bex