ssh çalışmıyor


10

Pi'mi ssh edemiyorum. RPI doğrudan ana bilgisayarıma bağlı.

Sunucumun IP adresini ayarladım: ----

sudo ifconfig eth0 192.168.0.204 netmask 255.255.255.0 up
sudo route add default gw 192.168.0.200

Pi ağ arayüzleri dosyasında varsayılan IP var: ----

auto lo eth0
iface lo inet loopback
iface eth0 inet static
    address 192.168.0.202
    netmask 255.255.255.0
    gateway 192.168.0.200

PC'mde yapılandırma comand ise: -----

ignite@ignite-desktop:~$ ifconfig
eth0      Link encap:Ethernet  HWaddr 6c:f0:49:f3:a6:1b  
          inet addr:192.168.0.204  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::6ef0:49ff:fef3:a61b/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:681 errors:0 dropped:0 overruns:0 frame:0
          TX packets:208 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:43752 (43.7 KB)  TX bytes:33407 (33.4 KB)
          Interrupt:26 Base address:0x4000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:12 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:1012 (1.0 KB)  TX bytes:1012 (1.0 KB)

Ping aynı ev sahibi için çalışıyor: ----

ignite@ignite-desktop:~$ ping 192.168.0.204
PING 192.168.0.204 (192.168.0.204) 56(84) bytes of data.
64 bytes from 192.168.0.204: icmp_seq=1 ttl=64 time=0.026 ms
64 bytes from 192.168.0.204: icmp_seq=2 ttl=64 time=0.018 ms
64 bytes from 192.168.0.204: icmp_seq=3 ttl=64 time=0.017 ms
64 bytes from 192.168.0.204: icmp_seq=4 ttl=64 time=0.014 ms

Ping, ana bilgisayarımdaki pi için çalışıyor: ----

ignite@ignite-desktop:~$ ping 192.168.0.202
PING 192.168.0.202 (192.168.0.202) 56(84) bytes of data.
64 bytes from 192.168.0.202: icmp_seq=1 ttl=64 time=0.530 ms
64 bytes from 192.168.0.202: icmp_seq=2 ttl=64 time=0.508 ms
64 bytes from 192.168.0.202: icmp_seq=3 ttl=64 time=0.464 ms
64 bytes from 192.168.0.202: icmp_seq=4 ttl=64 time=0.445 ms
64 bytes from 192.168.0.202: icmp_seq=5 ttl=64 time=0.434 ms

SSH çalışmıyor

ignite@ignite-desktop:~$ ssh pi@raspberrypi
ssh: Could not resolve hostname raspberrypi: Name or service not known

ignite@ignite-desktop:~$ ssh pi@192.168.0.202
Read from socket failed: Connection reset by peer

ignite@ignite-desktop:~$ ssh 192.168.0.202 -l pi
Read from socket failed: Connection reset by peer

Lütfen nasıl çözüleceğini önerin?

düzenleme: ---
ssh -vvv pi@192.168.0.202 ---> çıktı

ignite@ignite-desktop:~$ ssh -vvv pi@192.168.0.202
OpenSSH_5.1p1 Debian-6ubuntu2, OpenSSL 0.9.8g 19 Oct 2007
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.0.202 [192.168.0.202] port 22.
debug1: Connection established.
debug1: identity file /home/ignite/.ssh/identity type -1
debug1: identity file /home/ignite/.ssh/id_rsa type -1
debug1: identity file /home/ignite/.ssh/id_dsa type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.0p1 Debian-2
debug1: match: OpenSSH_6.0p1 Debian-2 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.1p1 Debian-6ubuntu2
debug2: fd 3 setting O_NONBLOCK
debug1: SSH2_MSG_KEXINIT sent
Read from socket failed: Connection reset by peer

1
Ssh arka plan programının çalıştığını kontrol ettiniz mi?
codey

Aslında bir HDMI ekranım yok ve ssh kullanarak pi'ye oturum açmak için uzak masaüstü bilgisayarımı kullanıyordum. Şimdi nasıl kontrol edebilirim?
Allan

ps aux | grep sshd
codey

Sshd çalışıyorsa, çıktı sshd işlemini gösterecektir. Elbette az önce koştuğumuz "grep sshd" nin yanında.
codey

Yanıtlar:


5

Yeni yüklenen raspbian ile aynı sorunu vardı ve sorun sunucu tarafı ssh ana bilgisayar anahtarları ile oldu.

Bu anahtarlar, her aygıtın farklı ssh anahtarlarına sahip olması nedeniyle görüntü üzerinde üretilmez ve ilk önyükleme sırasında bu anahtarlar otomatik olarak oluşturulur.

Benim sorunum muhtemelen bu anahtarları oluşturma sırasında kaynağı kes, sıfır boyutu ile yanlış oldu.

Çözüm ssh sunucu tarafı ana bilgisayar anahtarlarını yeniden oluşturmaktır:

rm /etc/ssh/ssh_host_*
dpkg-reconfigure openssh-server

https://wiki.debian.org/SSH#Regenerating_host_keys


2
ilk etapta giriş yapamazlarsa, ssh sunucu tarafı ana bilgisayar anahtarlarını (dpkg-reconfigure openssh-server) nasıl yeniden oluşturmalı?
Hayri Uğur Koltuk

Kesinlikle @ HayriUğurKoltuk Ben bir mac'tayım, bunu nasıl yapabilirim?
clearlight

4

Sorun ve düzeltme nedeni

Özel programlar olmadan , ana bilgisayar adını kullanarak Pi'ye giriş yapamazsınız . LAN ağları için, ana bilgisayara ping atın. IP'nizi aldıktan sonra not alın. Ardından terminale yazın:

ssh pi@this_is_the_ip

ve giriş yapabilmeniz gerekir.

Evinizdeki ağ dışından Pi erişmek istiyorsanız, gereken bağlantı noktası iletmek için yönlendirici. Aslında, bunun nasıl yapılacağı ile ilgili bir yığın değişim sorusu vardır .

Pi'niz için hala güzel bir ad kullanmak istediğinizi varsayarsak, hem ağınız içinde hem de onsuz çalışacak bir seçenek vardır .

DNSDynamic

Bu yazılım, pi'niz için bir alan adı ayarlamanızı sağlar.

  1. Git kendi web sitesinde ve bir alan adı ve bir hesap ayarlayabilirsiniz.

  2. Pi'nize yükleyin ddclient.

    sudo apt-get install ddclient 
    

    Ardından yapılandırma ayarlarını düzenleyin.

    sudo nano /etc/ddclient.conf
    

    Son olarak, dosyayı aşağıdaki şekilde değiştirin:

# /etc/ddclient.conf

daemon=600

timeout=10

ssl=yes

protocol=dyndns2

use=web, web=myip.dnsdynamic.com #Enter your URL here

server=www.dnsdynamic.org

login=x@gmail.com  #userid for dnsdynamic.com

password='xxxx'      #password for the same put inside quotes

x.dnsdynamic.com  #the domain name you created

Bilgisayarınız her uyandığında bunun otomatik olarak başlamasını istediğinizi varsayarsak, aşağıdakileri terminale girin.

sudo nano /etc/rc.local

Aşağıdaki komutu daha önce ekleyin exit 0(son satır olan)

sudo /usr/sbin/ddclient -daemon 600 -syslog

Son olarak, yine de portforward olmalısınız .

Umarım bu yardımcı olur. Aşağıdaki yorum bölümünde sorular sorun.


Aslında derledi ve en son openssl benim hedef RPi yükledim. Şimdi ssh benim için çalışmıyor ssh openssl'ye mi bağlı?
Allan

SSL (Güvenli Yuva Katmanı) olduğu değil SSH çalışması için gerekli. Aslında bu kurulumda sorun olabilir. Ancak, lütfen ana bilgisayar adı yerine Pi'nin yerel IP adresini kullanmayı deneyin.
xxmbabanexx

-----> ssh -vvv pi@192.168.0.202 için o / p gönderdim -> sorunun ne olduğunu önerebilir misin
Allan

benim ana & hedef anahtarları rejenere .. ~ / .ssh bilinen host dosyasını kaldırıldı ... o çalıştı ...
Allan

tüm dosyayı kaldır: --- / etc / ssh ----> shh_config ---> dışında ve bu bağlantıya göre ssh config değiştirildi ---> blog.harshadura.net/2012/01/…
Allan

0

Bu soruların cevabına bir göz atabilirsiniz.

Raspberry Pi'nin SSH için IP adresini alma

Bahsetmediğim başka bir olasılık, bir alan satın almak (çok ucuz) ve DNS ile oynamak. Etki alanını aasgard.info0,99 sent satın aldım ve ygdrasill.aasgard.infodahili bir adrese ad verdim ( 192.168.1.141bu durumda). Ardından, varsayılan alan adını satın aldığınız alan adı ve voila 'olarak ayarlamanız gerekir :)

İtiraf etmeliyim ki, etki alanını kurmak için her zaman harcadıktan sonra / etc / hosts dosyasını veya avahi'yi kullanmanın çok daha kolay olduğunu fark ettim :)


0

Raspberry Pi'nizde bir SSH sunucusu başlattığınızdan emin misiniz? Ping yapabilmeniz SSH sunucusu çalıştırdığı anlamına gelmez. sshdHafif bir SSH sunucusu deneyin .


0

SSH'yi etkinleştir

Kasım 2016 sürümünden itibaren Raspbian, SSH sunucusunu varsayılan olarak devre dışı bıraktı.

Terminalden manuel olarak etkinleştirilebilir:

sudo raspi-config
Select Interfacing Options
Navigate to and select SSH
Choose Yes
Select Ok
Choose Finish

veya

Launch Raspberry Pi Configuration from the Preferences menu
Navigate to the Interfaces tab
Select Enabled next to SSH
Click OK

Alternatif olarak, hizmeti başlatmak için systemctl kullanın

sudo systemctl enable ssh
sudo systemctl start ssh

-1

SSH bağlantısı varsayılan olarak en son ahududu pi'de DISABLED'dir. Kasım 2016'da / sonrasında yayınlanan RPi.

Adımlar şunlardır: 1) SD karta raspbian görüntü yazın. 2) uzantısız bir ssh dosyası oluşturun. 3) bu ssh dosyasını resminizin yazıldığı SD karta kopyalayın. 4) Sonunda ahududu pi SSH mümkün olacak.

Daha fazla ayrıntı için bu videoyu izleyin: https://www.youtube.com/watch?v=zKT6bTESlLs


2
Raspberry Pi'ye hoş geldiniz! Burada tura katılın ve işlerin nasıl çalıştığını görmek için yardım merkezini ziyaret edin . Bu sorunun 2013'ten geldiğine dikkat edin. O zaman tarif ettiğiniz sorun hiç bir sorun değildi ...
Ghanima
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.