Raspberry Pi로 VPN을 설정하려고하는데 첫 번째 단계는 ssh
로컬 네트워크 외부에서 장치에 액세스 하는 기능을 얻는 것 입니다. 어쨌든 이것이 불가능하다는 것을 증명하고 있으며 그 이유를 전혀 알지 못합니다. ssh
로 서버에 접속 하려고 user@hostname
하면 오류가 발생합니다.
ssh: Could not resolve hostname [hostname]: nodename nor servname provided, or not known
그러나 다음을 사용하여 서버에 로그인 할 수 있습니다.
ssh user@[local IP]
서버는 최신 Raspbian 배포판을 실행하는 Raspberry Pi Model B이며 연결하려는 시스템은 Mavericks를 실행하는 Macbook Pro입니다. ssh
Raspbian을 설정할 때 Raspberry Pi에서 활성화되었습니다.
다른 사람 이이 문제가 있는지 확인하려고 몇 시간 동안 스택 오버플로를 익히고 아무것도 찾지 못했습니다. ssh
내가 찾은 모든 자습서는 원격 컴퓨터에서 설정하고 호스트 이름을 사용하여 어디서나 로그인 할 수 있어야한다고 말했지만 성공하지 못했습니다.
답변
최근에 같은 문제가 발생했습니다. 네트워크의 파이로 ssh를 할 수 있었지만 홈 네트워크 외부에서는 오지 못했습니다.
나는 이미했다 :
- 내 홈 네트워크에 ssh를 설치하고 테스트했습니다.
- 내 pi의 고정 IP를 설정하십시오.
- 동적 DNS 서비스를 설정하고 내 pi에 소프트웨어를 설치했습니다. 정적 ip를 설정하기 위해 이러한 지침 을 참조 했으며 더 많은 지침 리소스가 있습니다.
또한 웹 사이트를 호스팅하기 위해 라우터에서 포트 전달을 설정했으며 포트 22를 ssh의 고정 IP로 고정했습니다. 그러나 포트 전달을 수행하는 응용 프로그램을 지정하는 필드를 비워 두었습니다. 라우터. 어쨌든이 필드에 ‘ssh’를 추가했습니다. 어디서나 내 파이에 작동하는 ssh 연결.
라우터의 포트 포워딩 설정을 작성하겠습니다.
(ApplicationTextField) _ssh (외부 포트) _22 (내부 포트) _22 (프로토콜) _ 둘 다 (IP 주소로) _192.168.1. ### (사용) _checkBox
포트 전달 설정은 라우터마다 다를 수 있으므로 라우터의 방향을 찾으십시오.
이제 홈 네트워크 외부에있을 때 다음을 입력하여 pi에 연결합니다.
ssh pi @ [호스트 이름]
그런 다음 비밀번호를 입력하고 연결할 수 있습니다.
답변
Mac을 사용하는 경우 DNS 응답자를 다시 시작하면 문제가 해결되었습니다.
sudo killall -HUP mDNSResponder
답변
원격 컴퓨터에 연결하는 것과 동일한 문제가 발생했습니다. 하지만 아래와 같이 로그인 할 수있었습니다.
ssh -p 22 myName@hostname
또는:
ssh -l myName -p 22 hostname
답변
전세계 어디에서나 VPN에 액세스해야하는 경우 도메인 이름을 등록하고 VPN / 네트워크 게이트웨이의 공용 IP 주소를 가리켜 야합니다. 동적 DNS 서비스를 사용하여 호스트 이름을 공개 IP에 연결할 수도 있습니다.
Mac에서 로컬 네트워크 내부의 Raspberry로만 ssh해야하는 경우 다음과 같이하십시오. Mac에서을 편집하십시오 /etc/hosts
. 라즈베리에 호스트 이름이 “berry”이고 IP가 “172.16.0.100”이라고 가정하면 한 줄을 추가하십시오.
# ip hostname
172.16.0.100 berry
지금 : ssh user@berry
작동합니다.
답변
호스트 이름에 .local을 추가하여 해결할 수있는 동일한 문제가 발생했습니다. ssh user@hostname.local
답변
내 경우에는이 같은 ssh를 시도했다
ssh pedro@192.168.2.179:22
올바른 형식이 다음과 같은 경우 :
ssh pedro@192.168.2.179 -p 22
답변
명령이 다음과 같은 경우 :
$ ssh -p 1122 path/to/pemfile user@[hostip/hostname]
또한 같은 오류가 발생합니다
ssh: Could not resolve hostname [hostname]: nodename nor servname provided, or not known
-i /path/to/pemfile
ssh 옵션을 놓치면
따라서 명령은 다음과 같아야합니다.
$ ssh -p 1122 -i path/to/pemfile user@[hostip/hostname]