diretiva chroot em sshd_config falha ao excluir usuários

1

No Ubuntu, eu tenho essa configuração do servidor SSH configurada em /etc/ssh/sshd_config :

Subsystem sftp internal-sftp

UsePAM yes
ChrootDirectory %h
ForceCommand internal-sftp
GatewayPorts no
AllowTcpForwarding no
KeepAlive yes
IgnoreUserKnownHosts no
Match group sftp

Mas mesmo os usuários que não estão em sftp estão sendo restringidos pelo chroot. Por exemplo, quando bobby (não em sftp ) tenta acessar o SSH, esse erro ocorre:

sshd[17977]: fatal: bad ownership or modes for chroot directory "/home/bobby"

Eu tentei isso:

Match group sftp, User !bobby

E reiniciar o serviço, mas ocorre o mesmo problema.

    
por Zeno 02.10.2015 / 19:13

1 resposta

1

Você precisa de Match group sftp antes das linhas que deseja aplicar a esse grupo. Nada está sendo aplicado ao grupo sftp porque não há palavras-chave depois disso! Ou melhor, neste caso, as palavras-chave estão sendo aplicadas a todos porque você não especifica um grupo para corresponder até depois delas.

Para citar man sshd_config

Match   Introduces  a conditional block.  If all of the criteria on the
        Match line  are satisfied, the keywords on the following lines
        override those set  in the global section of the config file,
        until either another Match  line or the end of the file.  If a
        keyword appears in  multiple Match blocks that are satisified,
        only the first instance of the keyword is applied.

Tente algo como:

Subsystem sftp internal-sftp

UsePAM yes

GatewayPorts no
AllowTcpForwarding no
KeepAlive yes
IgnoreUserKnownHosts no

Match group sftp
  ChrootDirectory %h
  ForceCommand internal-sftp
    
por 02.10.2015 / 22:54

Tags