Если у вас точкой входа в инфраструктуру является teleport, то полезно будет иметь ввиду вот такой конфиг для SSH.
Host <hosts>
UserKnownHostsFile "~/.tsh/known_hosts"
IdentityFile "~/.tsh/keys/<teleport_domain>/<user_name>"
CertificateFile "~/.tsh/keys/<teleport_domain>/<user_name>-ssh/teleport-cert.pub"
Host <hosts>
Port <port_number>
ProxyCommand "/usr/local/bin/tsh" proxy ssh --cluster=<teleport_cluster_name> --proxy=<teleport_domain> %r@%h:%p
Тут особой магии нет, ssh использует команду tsh proxy ssh для туннелирования трафика через teleport proxy. Подключиться через ssh:
ssh -F /path/to/ssh_config
Если используется ansible, то следует указать в конфигурационном файле об использовании кастомного конфига:
[ssh_connection]
ssh_args = -F /path/to/config
Тут есть нюанс. Я использовал конфиг с параметром:
scp_if_ssh = True
И получал ошибку:
"msg": "failed to transfer file to
Т.е. ansible не мог скопировать файл в связке с телепорт через scp. Дефолтный SFTP отработал прекрасно, после выставления параметра в False.
#ansible