ssh ไม่ทำงาน


10

ฉันไม่สามารถ ssh ลงใน pi ของฉัน RPI เชื่อมต่อโดยตรงกับโฮสต์พีซีของฉัน

ฉันได้ตั้งค่าที่อยู่ IP ของโฮสต์ของฉัน: ----

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

Pi มี IP เริ่มต้นในไฟล์อินเตอร์เฟสเครือข่ายเป็น: ----

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

ถ้า config comand บนพีซีของฉัน: -----

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 ทำงานกับโฮสต์เดียวกัน: ----

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 ทำงานสำหรับ pi จากพีซีโฮสต์ของฉัน: ----

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 ไม่ทำงาน

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

โปรดแนะนำวิธีการแก้ไขหรือไม่

แก้ไข: ---
ssh -vvv pi@192.168.0.202 ---> ผลลัพธ์คือ

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 daemon กำลังทำงานอยู่หรือไม่
codey

จริง ๆ แล้วฉันไม่มีหน้าจอ HDMI & ใช้คอมพิวเตอร์เดสก์ท็อประยะไกลเพื่อเข้าสู่ระบบ pi โดยใช้ ssh ตอนนี้ฉันจะตรวจสอบได้อย่างไร
อัลลัน

ps aux | grep sshd
codey

หาก sshd กำลังทำงานอยู่เอาต์พุตจะแสดงกระบวนการ sshd (es) นอกจาก "grep sshd" ที่เราเพิ่งวิ่งไปแน่นอน
codey

คำตอบ:


5

ฉันมีปัญหาเดียวกันกับ raspbian ที่เพิ่งติดตั้งใหม่และปัญหาก็คือกับคีย์โฮสต์ ssh ของเซิร์ฟเวอร์

คีย์เหล่านี้ไม่ได้ถูกสร้างขึ้นบนภาพเนื่องจากอุปกรณ์แต่ละตัวต้องมีคีย์ ssh ที่แตกต่างกันและในระหว่างการบู๊ตครั้งแรกจะมีการสร้างคีย์เหล่านี้ขึ้นโดยอัตโนมัติ

ปัญหาของฉันคืออาจเป็นไปได้ว่าในระหว่างการสร้างกุญแจเหล่านี้ฉันตัดการเชื่อมต่ออุปทานพวกเขาผิดขนาดศูนย์

โซลูชันคือการสร้างคีย์โฮสต์ฝั่งเซิร์ฟเวอร์ ssh ใหม่:

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

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


2
เราควรสร้างคีย์โฮสต์ฝั่งเซิร์ฟเวอร์ ssh ใหม่ได้อย่างไร (dpkg-reconfigure openssh-server) หากพวกเขาไม่สามารถเข้าสู่ระบบได้ตั้งแต่แรก?
Hayri Uğur Koltuk

@ HayriUğurKoltukฉันใช้ mac ฉันจะทำยังไงดี?
clearlight

4

สาเหตุของปัญหาและการแก้ไข

หากไม่มีโปรแกรมพิเศษคุณจะไม่สามารถ ssh เข้าสู่ Pi โดยใช้ชื่อโฮสต์ สำหรับเครือข่าย LAN ให้ทำการ ping โฮสต์ เมื่อคุณมี IP แล้วให้จดไว้ จากนั้นเขียนลงในเทอร์มินัล:

ssh pi@this_is_the_ip

และคุณควรจะสามารถเข้าสู่ระบบได้

หากคุณต้องการเข้าถึง Pi จากนอกเครือข่ายในบ้านของคุณคุณจะต้องพอร์ตส่งต่อเราเตอร์ของคุณ ในความเป็นจริงมีคำถามแลกเปลี่ยนสแต็คเกี่ยวกับวิธีการทำเช่นนี้

สมมติว่าคุณยังคงต้องการใช้ชื่อที่ดีสำหรับ Pi ของคุณมีตัวเลือกหนึ่งที่จะทำงานได้ทั้งภายในเครือข่ายของคุณและไม่ใช้มัน

DNSDynamic

ซอฟต์แวร์นี้ช่วยให้คุณตั้งค่าชื่อโดเมนสำหรับ pi ของคุณ

  1. ไปที่เว็บไซต์ของพวกเขาและตั้งค่าชื่อโดเมนและบัญชี

  2. ติดตั้งddclientบน Pi ของคุณ

    sudo apt-get install ddclient 
    

    แล้วแก้ไขการตั้งค่าการกำหนดค่า

    sudo nano /etc/ddclient.conf
    

    ในที่สุดให้เปลี่ยนไฟล์เป็นสิ่งต่อไปนี้:

# /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

สมมติว่าคุณต้องการให้สิ่งนี้เริ่มโดยอัตโนมัติทุกครั้งที่คอมพิวเตอร์ของคุณตื่นขึ้นมาให้ป้อนข้อมูลต่อไปนี้ลงในเครื่อง

sudo nano /etc/rc.local

เพิ่มคำสั่งต่อไปนี้ก่อนexit 0(ซึ่งเป็นบรรทัดสุดท้าย)

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

สุดท้ายคุณจะต้องยังคงพอร์ต

หวังว่านี่จะเป็นประโยชน์ ถามคำถามในส่วนความคิดเห็นด้านล่าง


ที่จริงฉันรวบรวม & ติดตั้ง openssl ล่าสุดกับ RPi เป้าหมายของฉัน ตอนนี้ ssh ไม่ทำงานสำหรับฉัน ssh หรือไม่ขึ้นอยู่กับ openssl?
อัลลัน

ไม่จำเป็นต้องใช้SSL (secure sockets layer) เพื่อเรียกใช้ SSH อาจเป็นปัญหาในการตั้งค่านี้ แต่โปรดลองใช้ IP ท้องถิ่นของ Pi แทนชื่อโฮสต์
xxmbabanexx

ฉันได้โพสต์ o / p สำหรับ -----> ssh -vvv pi@192.168.0.202 ---> คุณช่วยแนะนำสิ่งที่เป็นปัญหาได้อย่างไร
Allan

ฉันสร้างคีย์ใหม่บนโฮสต์และเป้าหมายของฉัน .. ลบไฟล์โฮสต์ที่รู้จักออกจาก ~ / .ssh ... มันใช้งานได้ ...
อัลลัน

ลบไฟล์ทั้งหมดจาก: --- / etc / ssh ----> ยกเว้น shh_config ---> และเปลี่ยนการตั้งค่า ssh ตามลิงค์นี้ ---> blog.harshadura.net/2012/01/01/…
Allan

0

คุณสามารถดูคำตอบของฉันสำหรับคำถามนี้

วิธีรับที่อยู่ IP ของ Raspberry Pi สำหรับ SSH

ความเป็นไปได้อีกอย่างที่ฉันไม่ได้กล่าวถึงก็คือซื้อโดเมน (ราคาถูกมาก) และเล่นกับ DNS ฉันซื้อโดเมนในaasgard.infoราคา 0.99 เซ็นต์และชื่อที่กำหนดให้ygdrasill.aasgard.infoกับที่อยู่ภายใน ( 192.168.1.141ในกรณีนี้) จากนั้นคุณต้องตั้งค่าโดเมนเริ่มต้นเป็นชื่อโดเมนที่คุณซื้อและ voila ':)

ฉันต้องยอมรับว่าหลังจากใช้เวลาตั้งค่าโดเมนฉันรู้ว่าการใช้ไฟล์ / etc / hosts หรือ avahi นั้นง่ายกว่ามาก :)


0

คุณแน่ใจหรือว่าคุณเริ่มเซิร์ฟเวอร์ SSH บน Raspberry Pi ของคุณ เพียงเพราะคุณสามารถปิงได้ก็ไม่ได้หมายความว่ามันกำลังเรียกใช้เซิร์ฟเวอร์ SSH ลองใช้sshdเซิร์ฟเวอร์ SSH แบบเบา ๆ


0

เปิดใช้งาน SSH

ตั้งแต่เดือนพฤศจิกายน 2559 Raspbian ปิดใช้งานเซิร์ฟเวอร์ SSH เป็นค่าเริ่มต้น

สามารถเปิดใช้งานได้ด้วยตนเองจาก Terminal:

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

หรือ

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

หรือใช้ systemctl เพื่อเริ่มบริการ

sudo systemctl enable ssh
sudo systemctl start ssh

-1

การเชื่อมต่อ SSH เป็นค่าเริ่มต้นที่ปิดใช้งานในราสเบอร์รี่ pi ล่าสุด The RPi ซึ่งเผยแพร่ใน / หลังเดือนพฤศจิกายน 2559

ขั้นตอนคือ: 1) เขียนภาพ raspbian ไปยังการ์ด SD 2) สร้างไฟล์ ssh โดยไม่มีนามสกุล 3) คัดลอกไฟล์ ssh ไปยังการ์ด SD ที่ภาพของคุณถูกเขียน 4) ในที่สุดคุณจะสามารถ SSH ราสเบอร์รี่ปี่ของคุณ

สำหรับรายละเอียดเพิ่มเติมดูวิดีโอนี้: https://www.youtube.com/watch?v=zKT6bTESlLs


2
ยินดีต้อนรับสู่ราสเบอร์รี่ Pi! กรุณาใช้การท่องเที่ยวและเยี่ยมชมศูนย์ช่วยเหลือเพื่อดูว่าสิ่งที่ทำงานที่นี่ โปรดทราบว่าคำถามนี้มาจากปี 2013 จากนั้นปัญหาที่คุณอธิบายไม่ได้เป็นปัญหาเลย ...
Ghanima
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.