Использование
После запуска бастион серверов, вы можете подключаться к ним с помощью клиента tuna.
Авторизация
Прежде чем приступить, выберете нужный сервер к которому вам нужен доступ, посмотреть список серверов можно тут. Если у вас нет доступа, запросите его у администраторов команды.
Далее нужно авторизоваться указав Login конечного пользователя на сервере, в нашем примере это root
, хотя мы рекомендуем использовать выделенного пользователя.
$ tuna bastion login root
INFO[12:01:27] Open in your browser: https://my.tuna.am/bastion_login/c95e812f-e1ef-4f32-a8e3-4fec7ddb7406
INFO[12:01:27] Waiting for approval...
В этот момент нужно будет подтвердить, что вы это вы перейдя по ссылке и авторизоваться на портале Tuna. Это и есть часть принципа нулевого доверия (Zero Trust).

Если всё в порядке для вашего пользователя будет подписан сертификат на 12 часов, с этим сертификатом пользователь сможет подключаться к бастион серверам к которым ему предоставили доступ с помощью ролей. Все ключи и сертификат будут сохранены локально.
INFO[12:03:03] Keys directory: /home/jidckii/.tuna/bastion/keys
Подключение
С действующим сертификатом вы сможете посмотреть список доступных серверов и в консоли:
$ tuna bastion ls
INFO[12:58:24] t480s (env=testing, region=am, service=ssh)
Либо сразу подключиться:
tuna bastion ssh root@t480s
Login root
указан для примера, у вас может быть свой пользователь.
Если прав достаточно и нет блокировок то появится активная сессия как у пользователя так и в администраторском разделе.
также можно сгенерировать ssh_config и использовать его для подключения через нативный ssh-client
, например:
$ tuna bastion ssh_config root@t480s
Host t480s
Hostname 127.0.0.1
Port 1234
User root
CertificateFile /home/example/.tuna/bastion/keys/root-cert.pub
UserKnownHostsFile /home/example/.tuna/bastion/keys/known_hosts
IdentityFile /home/example/.tuna/bastion/keys/id_rsa
сохраните в локальный файл и используйте его для подключения
tuna bastion ssh_config root@t480s > t480s.ssh_config
ssh -F t480s.ssh_config t480s
По истечении сертификата нужно будет снова авторизоваться tuna bastion login
и выпустить новый сертификат. Но если сессия клиента активна и подключение работает через обёртку tuna bastion ssh
, а не напрямую через нативный ssh-client
, то при приближении даты истечения сертификат также ротируется автоматически.