SSH através do host intermediário falha apenas no myuser @ mymac mas funciona em outro lugar

6

Não consigo me conectar via ssh a um dos nós do datacenter usando meu usuário no meu macbook. Este é um problema recente, e foi perfeitamente divertido desde ~ um par de semanas atrás.

Estranhamente, isso afeta apenas meu usuário no meu computador, mas consigo estabelecer a conexão de:

  • Um usuário diferente na mesma máquina, usando as mesmas chaves ssh e sem nenhuma regra .ssh / config.
  • Um servidor diferente, executando macos ou ubuntu, com as mesmas ou diferentes chaves ssh.

Usando meu nome de usuário no meu computador e as mesmas chaves, posso:

  • Conecte-se ao host do gateway
  • Conecte-se diretamente ao nó usando uma VPN (infelizmente, essa não é uma solução de longo prazo)

Estou bastante intrigado com este erro. Você pode me ajudar a localizar o problema?

Olhando para os logs, a conexão com o gateway é estabelecida, mas de alguma forma falha na conexão com o nó. Do lado do cliente:

⌘ ~ ❯ ssh -v -J gatekeeper@gateway ubuntu@node -i ~/.ssh/id_rsa 
OpenSSH_7.3p1, LibreSSL 2.4.1
[...]
debug1: Authentication succeeded (publickey).
Authenticated to gateway ([35.156.248.245]:22).
debug1: channel_connect_stdio_fwd node:22
debug1: channel 0: new [stdio-forward]
debug1: getpeername failed: Bad file descriptor
debug1: Requesting [email protected]
debug1: Entering interactive session.
debug1: pledge: network
debug1: client_input_global_request: rtype [email protected] want_reply 1
debug1: client_input_global_request: rtype [email protected] want_reply 1
debug1: client_input_global_request: rtype [email protected] want_reply 1
debug1: client_input_global_request: rtype [email protected] want_reply 1
debug1: client_input_global_request: rtype [email protected] want_reply 1
debug1: client_input_global_request: rtype [email protected] want_reply 1
debug1: client_input_global_request: rtype [email protected] want_reply 1
debug1: client_input_global_request: rtype [email protected] want_reply 1
channel 0: open failed: connect failed: Connection timed out
stdio forwarding failed
ssh_exchange_identification: Connection closed by remote host

No lado do gateway:

admin@gateway:~$ grep -e "\[7669\]" -e "\[7739\]" /var/log/auth.log
Mar 13 11:01:20 gateway sshd[7669]: Set /proc/self/oom_score_adj to 0
Mar 13 11:01:20 gateway sshd[7669]: rexec line 32: Deprecated option PermitBlacklistedKeys
Mar 13 11:01:20 gateway sshd[7669]: Connection from <laptop-out-ip> port 62113 on <gateway-ip> port 22
Mar 13 11:01:20 gateway sshd[7669]: Postponed publickey for gatekeeper from <laptop-out-ip> port 62113 ssh2 [preauth]
Mar 13 11:01:20 gateway sshd[7669]: Accepted publickey for gatekeeper from <laptop-out-ip> port 62113 ssh2: RSA 8d:7e:9c:53:11:c9:4d:b3:67:7b:ae:04:03:8f:e2:71
Mar 13 11:01:20 gateway sshd[7669]: pam_unix(sshd:session): session opened for user gatekeeper by (uid=0)
Mar 13 11:01:20 gateway sshd[7669]: User child is on pid 7739
Mar 13 11:03:27 gateway sshd[7739]: error: connect_to <node-ip> port 22: failed.
Mar 13 11:03:28 gateway sshd[7739]: Connection closed by <laptop-out-ip>
Mar 13 11:03:28 gateway sshd[7739]: Transferred: sent 2252, received 2864 bytes
Mar 13 11:03:28 gateway sshd[7739]: Closing connection to <laptop-out-ip> port 62113
Mar 13 11:03:28 gateway sshd[7669]: pam_unix(sshd:session): session closed for user gatekeeper

No lado do nó, não há entrada nos registros.

O ssd_config no gateway:

# ssh service configuration

AcceptEnv
AddressFamily inet
AllowAgentForwarding yes
AllowGroups
AllowTcpForwarding no
AllowUsers gatekeeper
AuthorizedKeysFile %h/.ssh/authorized_keys
ChallengeResponseAuthentication no
Ciphers aes128-ctr,aes192-ctr,aes256-ctr
ClientAliveCountMax 3
ClientAliveInterval 15
Compression delayed
DenyGroups
DenyUsers
GSSAPIAuthentication no
GatewayPorts no
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostbasedAuthentication no
KerberosAuthentication no
ListenAddress 0.0.0.0:22
LogLevel VERBOSE
LoginGraceTime 60
MaxAuthTries 6
MaxSessions 10
MaxStartups 30
PasswordAuthentication no
PermitBlacklistedKeys no
PermitRootLogin no
PermitTunnel no
PermitUserEnvironment no
PidFile /var/run/sshd.pid
PrintLastLog yes
PrintMotd no
Protocol 2
PubkeyAuthentication yes
RSAAuthentication no
RhostsRSAAuthentication no
StrictModes yes
SyslogFacility AUTH
TCPKeepAlive yes
UseDNS no
UseLogin no
UsePAM yes
UsePrivilegeSeparation yes
X11Forwarding no

Match User gatekeeper
AllowTcpForwarding yes
AllowAgentForwarding no
X11Forwarding no
    
por RogerFC 13.03.2017 / 11:19

3 respostas

2

Por fim, consegui identificar e identificar a origem do problema. Eu poderia fazer com que o problema desaparecesse por não conseguir a integração do shell iterm2, ou apenas atualizá-lo para a versão mais recente. Isso pode estar de alguma forma relacionado ao uso da casca do peixe.

Eu não mergulhei mais no problema, se alguém estiver interessado, por favor me avise.

    
por 22.03.2017 / 00:16
2
error: connect_to <node-ip> port 22: failed.

Isso parece que o encaminhamento de porta está desativado ou limitado pela opção PermitOpen em sshd config. Certifique-se de que é permitido, caso contrário, poste o sshd_config de gateway .

    
por 13.03.2017 / 15:02
2

that I am able to connect with the same command, keys, etc, from the same macbook and a different user

Talvez você precise EXECUTAR este com o novo usuário (em seu diretório pessoal):

ssh-keygen -t rsa

ssh-copy-id -i .ssh/id_rsa.pub gatekeeper@gateway 

ssh-copy-id -i .ssh/id_rsa.pub ubuntu@node
    
por 13.03.2017 / 19:40