로그인 시 SSH 배너를 표시하는 방법(비밀번호 인증에만 해당)

로그인 시 SSH 배너를 표시하는 방법(비밀번호 인증에만 해당)

사용자가 Linux 서버에 로그인하기 위해 사용자 이름을 입력하면 사용자에게 표시되는 경고 메시지가 있습니다. 키를 사용할 때가 아닌 비밀번호 인증에 대해서만 이 메시지를 표시하고 싶습니다. 호스트에 로그인하는 사용자에게만 표시되어야 하며, 한 호스트에서 다른 호스트로 SSH를 연결할 때는 표시되지 않습니다. (우리 호스트에는 모두 키가 설정되어 있으므로 비밀번호를 입력하지 않고도 서로 SSH를 연결할 수 있습니다.)

현재 /etc/ssh/sshd_config 파일에 경고 메시지가 포함된 텍스트 파일을 가리키는 배너 행이 있습니다. Banner에는 추가 구성 옵션이 없는 것 같은데, pam이나 다른 메커니즘을 사용하여 이 작업을 수행할 수 있는 방법이 있는지 궁금합니다. 감사해요.

답변1

예, 플러그인을 사용할 수 있습니다 pam_echo:

auth required pam_unix.so
auth optional pam_echo.so file=/etc/ssh/password_banner.txt

그러면 비밀번호 로그인 후 pam_echo 출력이 생성됩니다.

보다http://www.linux-pam.org/Linux-PAM-html/sag-pam_echo.html문서용.

편집: UsePAM yes또한 sshd_config. 비밀번호를 인증으로 대체했습니다.

답변2

키를 사용할 때가 아닌 비밀번호 인증에 대해서만 이 메시지를 표시하고 싶습니다. 호스트에 로그인하는 사용자에게만 표시되어야 하며, 한 호스트에서 다른 호스트로 SSH를 연결할 때는 표시되지 않습니다. (우리 호스트에는 모두 키가 설정되어 있으므로 비밀번호를 입력하지 않고도 서로 SSH를 연결할 수 있습니다.)

말을하는거야사용자열쇠 ~/.ssh/authorized_keys또는주인열쇠 /etc/ssh/ssh_known_hosts?

현재 /etc/ssh/sshd_config 파일에 경고 메시지가 포함된 텍스트 파일을 가리키는 배너 행이 있습니다.

Banner표시됩니다~ 전에모든 인증이 발생합니다.

pam이나 다른 메커니즘을 사용하여 이 작업을 수행할 수 있는 방법이 있는지 궁금합니다.

원격(소스) 호스트 이름을 확인해 볼 수 있습니다. pam_access사용자가 네트워크 외부에서 왔는지 확인하세요.

세션 [성공=1 기본값=무시] pam_access.so accessfile=/etc/pam_access_localnet.conf
세션 선택 사항 pam_echo.so 파일=/etc/notice

/etc/pam_access_localnet.conf:

+ : 전체 : 192.168.201.0/24
- : 모두 : 모두

관련 정보