두 개의 가상 머신이 있고 SSH를 통해 서로 원격 명령을 실행하고 싶습니다. 첫 번째 컴퓨터에서 다음 명령을 실행합니다.
ssh-keygen -t rsa
ssh-copy-id 192.168.254.148
그런 다음 이 명령을 실행했는데 암호를 묻지 않았습니다.
[root@fazi1 data1]# ssh [email protected] df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 7.7G 893M 6.5G 12% /
tmpfs 1.5G 16K 1.5G 1% /dev/shm
/dev/sda1 194M 41M 144M 22% /boot
/dev/sda2 11G 7.7G 2.4G 77% /data1
/dev/sda7 4.5G 539M 3.8G 13% /data2
/dev/sda5 7.7G 1.4G 6.0G 19% /opt
두 번째 컴퓨터에서 다음 명령을 실행합니다.
ssh-keygen -t rsa
ssh-copy-id 192.168.254.150
작동하는지 확인하고 싶을 때:
[root@fazi2 data1]# ssh [email protected] df -h
[email protected]'s password:
첫 번째 컴퓨터에서는 원하는 방식으로 작동하지만 두 번째 컴퓨터에서는 다르게 동작하는 이유는 무엇입니까?
어떻게 해야 합니까? (잘못된 비밀번호를 입력하지 않았는지 확인하기 위해 이 명령을 몇 번 실행했습니다.)
답변1
내가 정확하게 기억한다면, 루트 로그인이 비활성화된 경우 .150
, 즉
PermitRootLogin no
원칙적으로 허용되는 경우 /etc/sshd/sshd_config
모든 키와 비밀번호 인증이 거부됩니다. (또한 올바른 비밀번호라도 모든 비밀번호를 거부합니다.)
실행하면 어떤 문제가 발생할 수 있는지 알려주는 매우 자세한 출력이 제공됩니다. 등에서 핵심 라인을 볼 수 있으며 클라이언트가 서버에 키 라인을 제공했는지, 서버가 좋아하는지 확인할 수 있습니다. 제공하지 않으면 클라이언트의 권한 문제일 수 있으며, 서버가 이를 거부하면 원격 측에서 루트 로그인을 허용하지 않습니다(그러나 오류가 발생하거나 서버가 허용하지 않음). 티).ssh -vvv [email protected] false
/root/.ssh/id_rsa
authorized_keys
ssh-copy-id