Como posso especificar manualmente token (tgt) para ssh -K?

3

Pelo que entendi, a emissão de ssh -K somehost usará um token do kerberos para autenticar com somehost . É possível especificar qual arquivo usar como token?

Observe que o Kerberos não está configurado corretamente na minha máquina, mas eu apenas copiei o TGT de uma máquina na qual o Kerberos está configurado corretamente.

Mais especificamente, copiei o token para /tmp/krb5cc_1000 (onde 1000 é meu uid), para que klist reconheça o token da seguinte forma:

➜  ~ klist
Ticket cache: FILE:/tmp/krb5cc_1000
Default principal: [email protected]

Valid starting       Expires              Service principal  
XXXX  
XXXX

Eu gostaria de fazer isso, pois atualmente eu preciso de ssh do meu Laptop (L) para um servidor de gateway (G) no qual eu posso emitir o token e depois o ssh para o servidor final (S). Dado que o token pode ser válido por um período de tempo estendido e que o encaminhamento ssh transparente simplificaria a minha configuração de desenvolvimento, eu pretendo configurar o ssh ProxyCommand . No entanto, o ssh ProxyCommand requer que todas as chaves / tokens estejam presentes na máquina local (L).

Atualmente, estou usando um ProxyCommand da seguinte forma:

ProxyCommand ssh gateway nc %h %p

Isso me permite estabelecer uma conexão com (S), no entanto, a autenticação não é concluída:

OpenSSH_7.3p1-hpn14v11, OpenSSL 1.0.2k  26 Jan 2017
debug1: Reading configuration data /home/user/.ssh/config
debug1: /home/user/.ssh/config line 1: Applying options for *
debug1: /home/user/.ssh/config line 10: Applying options for S
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Executing proxy command: exec ssh GW nc S -p 22
debug1: permanently_drop_suid: 1000
debug1: identity file /home/user/.ssh/id_rsa type 1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.3p1-hpn14v11
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.6.1
debug1: match: OpenSSH_6.6.1 pat OpenSSH_6.6.1* compat 0x04000000
debug1: Remote is NON-HPN aware
debug1: Authenticating to S:22 as 'user'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: AUTH STATE IS 0
debug1: kex: algorithm: [email protected]
debug1: kex: host key algorithm: ecdsa-sha2-nistp256
debug1: REQUESTED ENC.NAME is '[email protected]'
debug1: kex: server->client cipher: [email protected] MAC: <implicit> compression: none
debug1: REQUESTED ENC.NAME is '[email protected]'
debug1: kex: client->server cipher: [email protected] MAC: <implicit> compression: none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY

Eu tentei definir GSSAPIAuthentication yes , o que deve forçar a autenticação via kerberos tanto quanto eu entendo.

    
por leezu 02.06.2017 / 14:48

1 resposta

2

Is it possible to specify which file to use as the token?

Não. O SSH está usando o ticket com o mesmo ticket visível para klist e acessível usando o GSSAPI.

copied the TGT from a machine on which Kerberos is set up properly.

Eu não acho que é assim que funciona. Comece do início e configure o kerberos corretamente.

This enables me to establish a connection to (S), however authentication does not finish:

A autenticação nem sequer começou de acordo com este log. Ele paira sobre a troca de chaves, que é completamente outra questão (a menos que você faça troca de chaves gssapi que você não faz).

    
por 02.06.2017 / 15:36

Tags