Debian - Permite que apenas um usuário faça o login de qualquer IP via ssh

1

Eu quero configurar o servidor para que apenas um usuário ( git ) consiga fazer o login de qualquer endereço IP (usando a chave), os outros usuários apenas de IPs especificados.

Currenly minha configuração permite entrar em qualquer usuário de apenas um IP especificado.

Aqui está o que eu tenho agora:

/etc/ssh/sshd_config:

PermitRootLogin no
StrictModes yes
RSAAuthentication yes
PubkeyAuthentication yes
# AllowUsers
# not configured

/etc/hosts.allow:

# my workplace IP
sshd: 191.225.37.xyz
# my trusted server
ALL: my.private.com

/etc/hosts.deny:

# bunch of addresses added by protection services
sshd: x.y.z.v

O UFW está desativado.

Como configurá-lo para que qualquer usuário possa fazer o login apenas a partir deste IP especificado (como está), mas git user pode efetuar login via ssh de qualquer IP?

    
por Sfisioza 21.02.2017 / 22:09

1 resposta

3

Você provavelmente deve fazer tudo isso com a função match em seu sshd_config em vez de tentar usar o tcp wrappers hosts.allow (que é uma função obsoleta no sshd oficial). Muitos exemplos podem ser encontrados com a pesquisa do google. Aqui está um exemplo não testado do que eu espero que seja semelhante ao que você deseja. Por favor, passe algum tempo lendo a man page e outros resultados do Google por conta própria.

PasswordAuthentication no
# git from anywhere with password auth
Match User git
    PasswordAuthentication yes
# anyone not git from a specific network with password auth
Match User !git  Address 192.168.0.0/16
    PasswordAuthentication yes
    
por 21.02.2017 / 22:15