De acordo comhomem sshd_config, posso especificar uma lista de cifras suportadas, por exemplo:
Ciphers arcfour, 3des-cbc
O problema é que uma aplicação cliente executada em um host não suporta a mesma cifra que o restante da rede.
Portanto, existe alguma maneira de especificar uma cifra para usar em todos os casos, mas com uma única exceção de host?
Responder1
As cifras listadas na Ciphers
diretiva devem corresponder à primeira correspondência, então coloque a cifra do cliente não autorizado por último na lista. Os outros clientes em sua rede negociarão primeiro as cifras mais altas na lista, se possível, e seu cliente não autorizado deverá passar para a cifra mais fraca.
Infelizmente, isso ainda permitirá que outros clientes usem as cifras mais fracas se definidas explicitamente. Infelizmente , você não pode colocar uma Ciphers
diretiva dentro de um Match
bloco. A outra opção que consigo pensar é executar um servidor diferente em uma porta diferente para a saída de cliente ímpar e restringir o acesso à segunda instância do sshd para esse host.
Responder2
Pelo que posso ver, a única opção é criar um script usando ForceCommand.
Não deve ser muito complicado usar o Match:
ForceCommand
Forces the execution of the command specified by ForceCommand, ignoring any command supplied by the client and ~/.ssh/rc if present. The command is invoked by using the user's login shell with the -c option. This applies to shell, command, or subsystem execution. It is most useful inside a Match block.
Os itens acima são das páginas de manual. Encontrei mais aqui:Script do Gatekeeper SSHD
--editar--
O melhor que posso fazer é executar uma instância SSHD separada em outra porta e adicionar -s a um dos exemplos de redirecionamento para capturar apenas o IP do aplicativo e redirecioná-lo para a outra instância configurada com a cifra correta:http://www.cyberciti.biz/faq/linux-port-redirection-with-iptables/