Como exibir o banner SSH no login, mas apenas para autenticação de senha

4

Eu tenho uma mensagem de aviso que é exibida para um usuário depois que ele digita seu nome de usuário para efetuar login em nossos servidores Linux. Eu só quero exibir esta mensagem para autenticações de senha, e não quando as chaves são usadas. Ele deve mostrar apenas para um usuário que esteja efetuando login em um host, e não quando estiver conectando de um host a outro (nossos hosts possuem chaves configuradas para que possamos fazer ssh de um para outro sem digitar senhas).

Atualmente, tenho uma linha para Banner no arquivo / etc / ssh / sshd_config que aponta para um arquivo de texto contendo a mensagem de aviso. Banner não parece ter mais nenhuma opção de configuração, então estou pensando se há uma maneira de fazer isso com pam ou algum outro mecanismo? Obrigado.

    
por Banjer 09.06.2010 / 13:19

2 respostas

7

Sim, você pode usar o plug-in pam_echo :

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

Isso deve produzir a saída pam_echo após o login por senha.

Veja o link para documentos.

Editar: você também precisa verificar se tem UsePAM yes no seu sshd_config . Senha substituída com auth.

    
por 09.06.2010 / 15:03
0

I only want to display this message for password authentications, and not when keys are used. It should only show to a user who is logging into a host, and not when they are sshing from one host to another (our hosts all have keys set up so we can ssh from one to another without entering passwords).

Você está falando sobre as chaves usuário ~/.ssh/authorized_keys ou host chaves /etc/ssh/ssh_known_hosts ?

Currently, I have a line for Banner in the /etc/ssh/sshd_config file which points to a text file containing the warning message.

Banner é exibido antes de qualquer autenticação.

I'm wondering if there is a way to do this with pam or some other mechanism?

Você pode tentar verificar o nome do host remoto (origem): verifique com pam_access se o usuário vier de fora da sua rede:

session [success=1 default=ignore] pam_access.so accessfile=/etc/pam_access_localnet.conf
session optional pam_echo.so file=/etc/notice

/etc/pam_access_localnet.conf :

+ : ALL : 192.168.201.0/24
- : ALL : ALL
    
por 09.06.2010 / 15:08