# Использование

После [запуска](https://tuna.am/docs/bastion/guides/setup.md) бастион серверов, вы можете подключаться к ним с помощью клиента [tuna](https://tuna.am/docs/guides/install/install-cli.md).

## Авторизация

Прежде чем приступить, выберете нужный сервер к которому вам нужен доступ, посмотреть список серверов можно [тут](https://tuna.am/docs/bastion/user/servers.md). Если у вас нет доступа, запросите его у администраторов команды.

Далее нужно авторизоваться указав Login конечного пользователя на сервере, в нашем примере это `root`, хотя мы рекомендуем использовать выделенного пользователя.

```sh
$ 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)](https://tuna.am/docs/bastion.md).

![](/docs/img/bastion/user_auth.png)

Если всё в порядке для вашего пользователя будет подписан сертификат на 12 часов, с этим сертификатом пользователь сможет подключаться к бастион серверам к которым ему предоставили доступ с помощью [ролей](https://tuna.am/docs/team/roles.md). Все ключи и сертификат будут сохранены локально.

```sh
INFO[12:03:03] Keys directory: /home/jidckii/.tuna/bastion/keys

```

## Подключение

С действующим сертификатом вы сможете посмотреть список доступных серверов и в консоли:

```sh
$ tuna bastion ls
INFO[12:58:24] t480s (env=testing, region=am, service=ssh)

```

Либо сразу подключиться:

```sh
tuna bastion ssh root@t480s

```

к сведению

Login `root` указан для примера, у вас может быть свой пользователь.

Если прав достаточно и нет блокировок то появится активная сессия как у [пользователя](https://tuna.am/docs/bastion/user/sessions.md) так и в [администраторском](https://tuna.am/docs/bastion/admin/sessions.md) разделе.

также можно сгенерировать ssh\_config и использовать его для подключения через нативный `ssh-client`, например:

```sh
$ 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

```

сохраните в локальный файл и используйте его для подключения

```sh
tuna bastion ssh_config root@t480s > t480s.ssh_config

```

```sh
ssh -F t480s.ssh_config t480s

```

Важно

По истечении сертификата нужно будет снова авторизоваться `tuna bastion login` и выпустить новый сертификат. Но если сессия клиента активна и подключение работает через обёртку `tuna bastion ssh`, а не напрямую через нативный `ssh-client`, то при приближении даты истечения сертификат также ротируется автоматически.
