ssh가 작동하지 않습니다


10

나는 내 파이에 ssh 수 없습니다. RPI가 호스트 PC에 직접 연결되어 있습니다.

호스트의 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

구성이 내 PC에있는 경우 : -----

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은 내 호스트 PC에서 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 데몬이 실행 중인지 확인 했습니까?
codey

실제로 나는 HDMI 화면이 없으며 ssh를 사용하여 pi에 로그온하기 위해 원격 데스크톱 컴퓨터를 사용하고있었습니다. 이제 어떻게 확인할 수 있습니까?
Allan

PS AUX | grep sshd
코디

sshd가 실행 중이면 출력에 sshd 프로세스가 표시됩니다. 물론 방금 실행 한 "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

문제 및 수정 사유

특별한 프로그램이 없으면 호스트 이름을 사용하여 Pi로 ssh 할 수 없습니다 . LAN 네트워크의 경우 호스트를 ping하십시오. IP가 있으면 적어 두십시오. 그런 다음 터미널에 작성하십시오.

ssh pi@this_is_the_ip

로그인 할 수 있어야합니다.

홈 네트워크 외부에서 Pi에 액세스하려면 라우터를 포트 포워드 해야합니다. 실제로, 이를 수행하는 방법에 대한 스택 교환 질문 이 있습니다.

여전히 Pi에 좋은 이름을 사용한다고 가정하면 네트워크 내에서 또는 네트워크없이 작동하는 옵션이 하나 있습니다 .

DNS 동적

이 소프트웨어를 사용하면 파이의 도메인 이름을 설정할 수 있습니다.

  1. 웹 사이트로 이동하여 도메인 이름과 계정을 설정하십시오.

  2. ddclientPi에 설치 하십시오.

    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

마지막으로, 여전히 포트 포워드 해야합니다 .

희망적으로 이것은 도움이됩니다. 아래의 의견 섹션에서 질문하십시오.


실제로 나는 대상 RPi에 최신 openssl을 컴파일하고 설치했습니다. 이제 ssh가 작동하지 않습니다 ssh는 openssl에 의존합니까?
Allan

SSH를 실행하는 데 SSL (Secure Sockets Layer)이 필요 하지 않습니다 . 실제로이 설정에서 문제가 될 수 있습니다. 그러나 호스트 이름 대신 Pi의 로컬 IP를 사용해보십시오.
xxmbabanexx

-----> ssh -vvv pi@192.168.0.202에 o / p를 게시했습니다 ---> 문제가 무엇인지 제안 할 수 있습니까
Allan

호스트 및 대상에서 키를 재생성했습니다. .. ~ / .ssh에서 알려진 호스트 파일을 제거했습니다 ... 작동했습니다 ...
Allan

shh_config --->를 제외하고 : --- / etc / ssh ---->에서 모든 파일을 제거하고이 링크에 따라 ssh 구성을 변경하십시오 ---> blog.harshadura.net/2012/01/…
Allan

0

이 질문에 대한 내 대답을 볼 수 있습니다.

SSH 용 Raspberry Pi의 IP 주소를 얻는 방법

내가 언급하지 않은 또 다른 가능성은 도메인을 구입하고 (매우 저렴함) DNS를 가지고 노는 것입니다. 도메인 aasgard.info을 0.99 센트로 사서 ygdrasill.aasgard.info내부 주소 ( 192.168.1.141이 경우)에 이름 을 할당했습니다 . 그런 다음 기본 도메인을 구입 한 도메인 이름으로 설정하고 voila ':)

도메인을 설정하는 데 모든 시간을 보낸 후에 / etc / hosts 파일 또는 avahi를 사용하는 것이 훨씬 쉽다는 것을 깨달았습니다.


0

Raspberry Pi에서 SSH 서버를 시작 했습니까? 핑할 수 있다고해서 SSH 서버가 실행되고있는 것은 아닙니다. sshd가벼운 SSH 서버를 사용해보십시오 .


0

SSH 사용

2016 년 11 월 릴리스부터 Raspbian은 기본적으로 SSH 서버가 비활성화되어 있습니다.

터미널에서 수동으로 활성화 할 수 있습니다.

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 연결이 기본적으로 비활성화되어 있습니다. 2016 년 11 월에 출시 된 RPi.

단계는 다음과 같습니다. 1) 라즈 비안 이미지를 SD 카드에 씁니다. 2) 확장자가없는 ssh 파일을 작성하십시오. 3) 해당 ssh 파일을 이미지가 기록 된 SD 카드에 복사하십시오. 4) 마지막으로 wou는 라즈베리 파이를 SSH 할 수 있습니다.

자세한 내용은이 비디오를보십시오 : https://www.youtube.com/watch?v=zKT6bTESlLs


2
라즈베리 파이에 오신 것을 환영합니다! 하시기 바랍니다 여행을 하고 방문 보려면 도움말 센터를 일이 여기에 어떻게 작동하는지 확인합니다. 이 질문은 2013 년에 한 것입니다. 그때까지 당신이 묘사 한 문제는 전혀 문제가되지 않았습니다 ...
Ghanima
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.