SSH를 새로 설치하면 작동하지 않습니다


48

나는 최근에 로프트에서 오래된 모델 B를 해방하고 NOOBS를 SD 카드에 넣고 최신 버전의 Raspbian을 설치했습니다. 나는 그것을 부팅하고 내 Mac에서 SSH로 시도했지만 다음을 얻었습니다.

ssh: connect to host 192.168.1.248 port 22: Connection refused

첫 번째 인스턴스에서을 실행 하여이 문제를 해결 sudo ssh restart했지만 이제 다시 부팅 할 때마다 다시 ssh를 다시 시작하기 전에 ssh 서비스를 다시 시작해야합니다. 실용적이지 않습니다. 더 영구적으로 고치기 위해 할 수있는 일이 있습니까?


답변:


84

문서 인용 :

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

콘솔을 통해 머신에서 SSH를 사용 가능하게하려면 다음을 수행하십시오.

입력 sudo raspi-config첫번째 선택, 터미널에서 Interfacing Options다음으로 이동, ssh언론, Enter선택 Enable or disable ssh server.

헤드리스 시스템에 SSH를 사용하려면 다음을 수행하십시오.

헤드리스 설정의 ssh경우 확장명없이 이라는 파일을 SD 카드의 부팅 파티션 에 배치하여 SSH를 활성화 할 수 있습니다 .


6
2018-03-14부터 Raspbian Stretch Desktop에서 헤드리스 설정을 시도했지만 더 이상 작동하지 않는 것 같습니다. 이전 버전으로 작업하고있었습니다.
JBaczuk

ssh부팅시 파일을 생성하는 헤드리스와 동일한 문제 는 부팅시 메시지가 표시 되어도 작동하지 않는 것 같습니다.
Sander Visser

@JBaczuk 나는 같은 것을 경험하고 있습니다. 아직 고쳤어?
Aaron

@JBaczuk 이제 "인터페이스 옵션"아래에 있습니다 (source : raspberrypi.org/forums/viewtopic.php?t=177883 )
Aaron

@Aaron, 알았지 만 헤드리스 설치로 어떻게합니까?
JBaczuk

11

Raspberry Pi에 대한 보안 업데이트가 최근에있었습니다. 다음은 https://www.raspberrypi.org/blog/a-security-update-for-raspbian-pixel/ 의 기사입니다.

재단의 기사에서 :

무엇이 바뀌 었습니까?

먼저 지금부터 이미지에서 SSH가 기본적으로 비활성화됩니다. SSH (Secure SHell)는 Linux 컴퓨터에 원격으로 로그인하여 원격 명령 줄에서이를 제어 할 수있는 네트워킹 프로토콜입니다. 위에서 언급 한 바와 같이 많은 Pi 소유자는이를 사용하여 Pi 헤드리스 (스크린 또는 키보드없이)를 설치하고 다른 PC에서 제어합니다.

과거에는 SSH가 기본적으로 활성화되었으므로 Pi 헤드리스를 사용하는 사람들은 SD 카드를 새로운 이미지로 쉽게 업데이트 할 수있었습니다. SSH를 켜거나 끄려면 항상 raspi-config 또는 Raspberry Pi Configuration 애플리케이션을 사용해야했지만 액세스하려면 헤드 자체 애플리케이션에는 해당되지 않는 Pi 자체에 연결된 화면과 키보드가 필요합니다. 따라서 이미지를 부팅하기 전에 SSH를 활성화하는 간단한 메커니즘을 제공했습니다.

Pi의 부팅 파티션은 SD 카드 리더가있는 모든 시스템, Windows, Mac 또는 Linux에서 액세스 할 수 있어야합니다. SSH를 사용하려면 ssh라는 파일을 / boot / 디렉토리에두기 만하면됩니다. 파일의 내용은 중요하지 않습니다. 파일에는 원하는 텍스트가 포함되거나 전혀 포함될 수 없습니다. Pi가 부팅되면이 파일을 찾습니다. 찾은 경우 SSH를 활성화 한 다음 파일을 삭제합니다. SSH는 여전히 Raspberry Pi Configuration 애플리케이션 또는 raspi-config에서 켜거나 끌 수 있습니다. 이 응용 프로그램 중 하나를 쉽게 실행할 수없는 경우이를 켜는 추가 방법 일뿐입니다.

열린 SSH 포트의 위험은 누군가가 액세스하여 로그인 할 수 있다는 것입니다. 이를 위해서는 사용자 계정과 비밀번호가 필요합니다. 기본적으로 모든 Raspbian 설치에는 비밀번호 'raspberry'가있는 기본 사용자 계정 'pi'가 있습니다. SSH를 사용하는 경우 해커가 기본값을 사용하지 않도록 'pi'사용자의 비밀번호를 변경해야합니다. 이를 장려하기 위해 부팅 프로세스에 경고를 추가했습니다. SSH가 활성화되어 있고 'pi'사용자의 비밀번호가 여전히 '라즈베리'인 경우 Pi를 부팅 할 때마다 데스크탑 또는 명령 행에 관계없이 경고 메시지가 표시됩니다. 비밀번호 변경은 시행하지 않지만 Pi가 위험에 노출 될 경우 부팅 할 때마다 경고 메시지가 표시됩니다.

우리는 이러한 (상대적으로 사소한) 변경이 너무 많은 불편을 초래하지 않지만 해커가 Pi를 공격하는 것을 훨씬 어렵게 할 것입니다.

이것이 기본적으로 의미하는 것은 최근 SSH와 같은 원격 연결을 사용하는 많은 장치가 해킹되었다는 것입니다. 이로 인해 SSH는 기본적으로 비활성화되어 있습니다. 이 문제를 해결하려면 /boot/디렉토리에 ssh라는 파일을 작성하십시오 . ssh라는이 파일은 원하는 경우 아무 텍스트 나 포함 할 수 있습니다. 그런 다음 sudo raspi-config command터미널에서를 사용하여 ssh를 다시 활성화 할 수 있습니다.

또한 암호와 같은 단순한 암호를 passwd명령을 사용하여 해독하기 어려운 암호로 변경하는 것이 좋습니다 .


2
"최근에 많은 장치 해킹이있었습니다" -> 아마 많은 사람들 이 이것에 대해 들었습니다 . Pis는 관련이 없었지만 "공장 사전 설정"비밀번호를 통해 매우 권한이있는 계정에 대한 공개 액세스 권한으로 기본적으로 SSH를 실행 한 이래로 악용 될 수 있습니다.
goldilocks

1
공격은 "최근"이 아닙니다. 나는 약 3 년 동안 나의 통나무에서 침입 시도를보고있다.
Mark

아마도 많지는 않지만 Raspberry Pis의 해킹이있었습니다!
King Balloonion

2

systemctl 해결책

screen + keyboard 또는 UART와 같은 비 SSH 방법을 통해 Pi에 쉘이 이미있는 경우 ( 이 게시물 참조) 다음을 실행할 수도 있습니다.

sudo systemctl enable ssh
sudo service sshd start

를 통해 대화식으로 수행하는 대신 sudo raspi-config.

/boot/ssh 매직 파일

파이에 쉘이 없다면 호스트에 SD 카드를 넣고 파티션 ssh에 file이라는 마법의 빈 파일을 만듭니다 boot/(첫 번째 파일 ).

Ubuntu 호스트에서는 자동으로 마운트되며 다음을 수행 할 수 있습니다.

sudo touch /media/$USER/boot/ssh

당신은 확인할 수 있습니다 :

lsblk

포함하는:

mmcblk0     179:0    0  14.4G  0 disk
├─mmcblk0p1 179:1    0  43.9M  0 part /media/ciro/boot
└─mmcblk0p2 179:2    0  14.4G  0 part /media/ciro/rootfs

Raspbian Lite 2018-11-13에서 테스트 한 전체 테스트 설정 : 네트워크 연결없이 SSH에서 RPi로?


0

예, @tecraf는 ssh기본적으로 비활성화되어 있지만 구성 위치가 변경되었습니다. 콘솔을 통해 시스템에서 SSH를 활성화하려면 다음을 수행하십시오.

입력 sudo raspi-config단자로 이동에서 5-Interfacing Options다음으로 이동, P2-ssh눌러 입력하고 사용 tab활성화 또는 비활성화 ssh server. 그런 다음 sudo shutdown -r now재부팅하십시오. (사이드 노트 셧다운은 -h지금 재부팅되지 않습니다)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.