로컬 서버에서 SSH 공개/개인 키 생성

로컬 서버에서 SSH 공개/개인 키 생성

오늘은 일부 스크립트를 자동화할 수 있도록 공개 SSH 키를 사용하여 3개의 서버(SSH 명령을 보내는 서버를 포함하여 4개)를 설정했습니다.

처음 2개 시스템에서는 작동하지만 세 번째 시스템에서는 작동하지 않습니다. SSH 명령을 보낼 때 SSH는 여전히 비밀번호를 묻는 메시지를 표시합니다.

로컬 서버에서 SSH 공개/개인 키 생성

root@local # ssh-keygen -t rsa
file > /var/.ssh_keys/id_rsa
passphrase > (empty)
root@local # ln -s /var/.ssh_keys/id_rsa /root/.ssh/id_rsa

로컬 서버의 키를 원격 호스트에 연결

root@local # cat /var/.ssh_keys/id_rsa.pub | ssh root@host 'path="/var/.ssh_remote_key" && mkdir -p $path && cat >> $path/authorized_keys && ln -s $path/authorized_keys /root/.ssh/authorized_keys'

로컬 서버

# uname -a
Linux 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u3 (2015-08-04) x86_64 GNU/Linux

# sshd -V
OpenSSH_6.7p1 Debian-5, OpenSSL 1.0.1k 8 Jan 2015

원격 서버(작동 중)

# uname -a
Linux 3.16.0-4-amd64 #1 SMP Debian 3.16.39-1+deb8u2 (2017-03-07) x86_64 GNU/Linux

# sshd -V
OpenSSH_6.7p1 Debian-5+deb8u3, OpenSSL 1.0.1t  3 May 2016

원격 서버(여전히 비밀번호를 묻는 메시지가 표시됨)

# uname -a
Linux 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-2 (2016-04-08) x86_64 GNU/Linux

# sshd -V
OpenSSH_6.7p1 Debian-5+deb8u2, OpenSSL 1.0.1k 8 Jan 2015

CHMOD /root/.ssh = 0700
CHMOD /root/.ssh/authorized_keys = 0644

답변1

permission두 원격 서버 모두 비슷한 버전의 Unix/OpenSSH를 공유하므로 폴더 의 파일 에 문제가 있을 수 있습니다 .ssh.

확인 해주세요:

  • .ssh(drwx------) 디렉토리 권한은 그룹/기타(예: 700 또는 755) 에 쓸 수 없습니다.(drwxr-xr-x)
  • 공개 키(.pub 파일)이며 authorized_keys644입니다.(-rw-r--r--)
  • 개인 키(id_rsa)는 600입니다.(-rw-------)

root원격 서버 에 로그인하려는 경우 /etc/ssh/sshd_config또는 PermitRootLogin yes.PermitRootLogin without-password

관련 정보