Como excluir de um “Match Group” no SSHD?

11

Existe um grupo de Correspondência na configuração do SSHD:

cat /etc/ssh/sshd_config
...
    Match Group FOOGROUP
    ForceCommand /bin/customshell
...

Existem muitos usuários na máquina que estão no "FOOGROUP".

Minha pergunta: como posso excluir um determinado usuário que está no "FOOGROUP" do "Match Group"?

    
por evachristine 16.06.2014 / 17:01

3 respostas

10

O operador Match pode receber vários argumentos, permitindo regras muito flexíveis. Nesse caso, você pode fazer algo assim para conseguir o que deseja.

Match Group FOOGROUP User !username
  ForceCommand /bin/customshell

O ! nega o argumento transmitido ao critério User , portanto, mesmo que o usuário username esteja no grupo FOOGROUP , o Match não será bem-sucedido e username não será dado o shell personalizado após o login.

    
por 16.06.2014 / 17:19
2

Você precisa usar várias cláusulas na entrada do arquivo de configuração, mas de uma maneira muito específica. Há um bug em algumas configurações que fazem com que a sintaxe geralmente recomendada e mais simples ("Usuário do FOOGROUP do Grupo de Correspondência! Nome de usuário") faça com que todos os membros do grupo não correspondam ou permita que eles escapem de sua cadeia chroot.

No Debian Jessie usando OpenSSH_6.0p1 Debian-4, OpenSSL 1.0.2d Eu recebo o resultado que todos os outros no grupo não podem mais conectar. Outros denunciam quebras de prisão. Em ambos os casos, uma sintaxe de

Match Group FOOGROUP User *,!username

parece funcionar sem efeitos colaterais. Algum tipo de bug no analisador, sem dúvida.

    
por 11.05.2017 / 08:46
0

com a opção abaixo eu posso prender o usuário sftp dentro do diretório especificado e também o usuário especificado capaz de logar através do ssh.

Match Group groupname User *,!username

Obrigado.

    
por 04.06.2018 / 14:27

Tags