시놀로지 / 해놀로지 SSH 접속을 ssh-key 로 변경하자

시놀로지 / 해놀로지 SSH 접속을 ssh-key 로 변경하자
Photo by Claudio Schwarz / Unsplash
이 작업을 하게 되면 sftp 또한 key접속으로 변경됩니다. 주의하세요.

먼저 접속하고 싶은 컴퓨터에서 ssh-key를 생성합니다.

ssh-keygen -t ed25519 -C "유저이메일" -f ~/.ssh/원하는_이름

예시) ssh-keygen -t ed25519 -C "abc@gmail.com" -f ~/.ssh/nas3
질문이 2개 정도나오는데 엔터 해서 넘어가면 key 생성된다. 

갱신) 아래의 방법으로 해도 된다.

ssh-keygen -t rsa -b 4096 -C "유저이메일" -f ~/.ssh/원하는_이름

예시) ssh-keygen -t rsa -b 4096 -C "abc@gmail.com" -f ~/.ssh/nas3
질문이 2개 정도나오는데 엔터 해서 넘어가면 key 생성된다. 

차이점

agent에 추가하자

ssh-add ~/.ssh/nas3

이렇게 추가 하고 아래 명령어로 추가되었는지 확인 하자

ssh-add -l

공개키를 복사

cat ~/.ssh/nas3.pub 

출력되는 내용을 복사합니다. (공개키를 시놀로지에 넣을 것입니다)

시놀로지에서 작업

SSH는 활성화 되었다는 조건으로 키 등록을 시도합니다.

터미널에서 ssh 시놀로지 접속합니다. 이때는 아이디랑 암호를 사용합니다.
(sudo 를 안했기 때문에 id 에 ssh-key를 넣는것입니다)

ssh id@ip

id => 사용하는 주계정 
ip => 내부 일수도 아니면 tailscale 일수도

.ssh 폴더를 생성합니다.

mkdir -p ~/.ssh

pwd 를 하시면 
/var/services/homes/접속한id   <- 현 시스템 synology 7.2이상 모습?

authorized_keys 파일 생성 및 편집을 합니다. 이때 nano editor이 필요합니다. 아니면 vim으로 하셔도 됩니다. 여기에서는 nano로 합니다.

nano ~/.ssh/authorized_keys
(안되면 vi 으로 작업)

위에 nas3.pub 공개키의 내용을 복사넣기 합니다. 

ssh-ed25519 AAAAC3NzaC1lZD....

저장하고 나가기합니다.

파일권한을 변경합니다.

sudo chmod 755 /var/services/homes/접속한id
sudo chmod 755 /var/services/homes/접속한id/.ssh
sudo chmod 644 /var/services/homes/접속한id/.ssh/authorized_keys

sshd_config 설정파일 수정

주의!! 위 설정파일을 수정할 때에는 다른 것을 잘못 수정하면 작동을 안할 수 있으니 조심하세요!

sudo nano /etc/ssh/sshd_config

아래의 2부분을 수정합니다. 

PasswordAuthentication yes                 => yes 를 no 변경
#AuthorizedKeysFile .ssh/authorized_keys   => 앞에 # 를 지우고
#PubkeyAuthentication yes                  => 앞에 # 를 지우고 뒤에 yes 확인


저장하고 나가기 합니다.

ssh 서비스 재시작

sudo systemctl restart sshd

ssh-key login test

ssh -i ~/.ssh/nas3 root@your-nas-ip -p 포트번호

ps. nano editor install via ssh link

ssh키관리와 접속에 유용한 어플 2가지 소개한다.

Termius – Modern SSH Client for Desktop and Mobile
Connect with one click from any mobile and desktop device. No re-entering IP addresses, ports, and passwords.

End