사용자가 로컬 네트워크를 사용하는 경우에만 암호를 사용하여 SSH를 허용하는 방법은 무엇입니까?

리놉

모든 사용자는 John을 제외한 키만 사용하여 로그인해야합니다. 그는 키를 사용하여 로그인 할 수 있으며 로컬 네트워크 192.168.1.x를 사용하는 경우 암호를 사용하여 ssh 할 수 있지만 임의 IP의 암호를 사용하여 로그인 할 수 없습니다.

존에 대한 규칙을 작성하는 방법을 모르겠습니다. AllowUsers를 수행 [email protected]합니까? 그러나 다른 IP에서 John을 거부하는 방법은 무엇입니까? John이 다른 포트를 사용하여 연결하면 어떻게됩니까?

이를 수행하는 가장 좋은 방법은 무엇입니까?

스틸 드라이버

Match지시문을 사용하여이를 수행 할 수 있어야합니다 .

시작하기 전에 서버에 대한 키 기반 액세스 (또는 물리적 액세스) 가있는 계정이 하나 이상 있는지 확인하십시오 .

그런 다음 서버의 /etc/ssh/sshd_config파일을 편집하여 끝에 매치 블록을 추가하십시오.

Match User john Address 192.168.1.0/24
    PasswordAuthentication yes

참고이 두 가지 조건, 표현하는 것으로 User john하고 Address 192.168.1.0/24, 모두 의 순서를 만족해야하는의 PasswordAuthentication yes적용을. 0/24것입니다 CIDR 표기법 은 192.168.2.x 서브넷에있는 주소.

이제 구성의 본문에서 다른 사용자 주소 조합에 대한 암호 인증을 비활성화 할 수 있습니다.

# Change to no to disable tunnelled clear text passwords

및 기본값 변경

#PasswordAuthentication yes

...에

PasswordAuthentication no

마지막으로 서비스를 다시 시작하십시오. systemd기반 초기화 시스템의 경우 다음을 사용하여 수행 할 수 있습니다.

sudo systemctl restart ssh.service

클라이언트가 예를 들어 시도하도록 강요하여 일치하지 않는 사용자가 더 이상 암호를 사용하여 인증 할 수 없는지 테스트 할 수 있습니다.

$ ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no [email protected]

다음과 같은 메시지로 실패해야합니다.

Permission denied (publickey).

반면 john암호를 입력하라는 메시지가되어야한다 :

$ ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no [email protected]
[email protected]'s password: 
Welcome to Ubuntu 16.04.3 LTS (GNU/Linux 4.4.0-116-generic x86_64)

로컬 네트워크 있을 때 암호 인증을 선호하는 메커니즘 john으로 지정하려면 해당 클라이언트 구성에서이를 지정해야합니다.~/.ssh/ssh_config

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관