SSH ProxyCommand e autenticação baseada em host: qual host assina?
Distinga o encaminhamento de um fluxo TCP através de um bastião do início de um segundo cliente SSH ali quando a autenticação baseada em host está envolvida.
Um destino vê uma conexão TCP vinda do bastião enquanto o cliente SSH que realiza a autenticação ainda é executado na estação de trabalho.
Host behind-bastion
ProxyCommand ssh -W %h:%p bastionAqui o auxiliar entra no bastião e pede ao seu servidor SSH uma conexão encaminhada para o destino. O cliente SSH externo da estação troca o protocolo SSH do destino por esse fluxo. O bastião fornece o transporte; não iniciou o cliente SSH voltado ao destino.
Essa distinção importa para a autenticação baseada em host. O auxiliar ssh-keysign do OpenSSH acede às chaves de host locais para gerar a assinatura necessária. Um endereço de origem de rede pertencente ao bastião não faz a estação assinar com a chave de host do bastião.
Compare com:
ssh -t bastion ssh targetIsto inicia outro programa SSH no bastião. A sua configuração local e as chaves de host disponíveis pertencem a essa máquina, pelo que pode participar num acordo de confiança baseado em host já configurado entre o bastião e o destino. Continua a precisar da autorização correspondente e das verificações de nome do destino.
A segunda forma também altera o funcionamento da sessão: executa um comando remoto e usa um terminal. Não é um substituto transparente para toda a transferência de ficheiros SSH ou transporte de automação. Escolha a opção segundo a máquina que deve autenticar-se perante o destino, em vez de enfraquecer as verificações de confiança do servidor para que o endereço de origem pareça suficiente.