Если вы часто используете ssh и ежедневно входите в систему на многих серверах или виртуальных машинах, используя разные имена пользователей и разные пароли, то позвольте мне показать вам простой способ сделать это с помощью файла конфигурации ssh, чтобы вам не приходилось запоминать все разные IP-адреса и имя пользователя и т. д. мы собираемся изменить файл ~/.ssh/config, чтобы настроить некоторые параметры для каждого пользователя.
- Файл конфигурации пользователя: `~/.ssh/config`
- Общесистемный файл конфигурации: `/etc/ssh/ssh_config`
Простой Конфиг
отредактируйте файл ~/.ssh/config и добавьте запись хоста, как показано ниже, вы можете настроить различные параметры, такие как имя хоста, порт и пользователь и т. д.
если ~ .ssh/config не существует, вы можете создать его, используя touch
touch ~/.ssh/config
Теперь редактируем
Host database
HostName db.example.com
Port 2222
User alok
после этой простой настройки вы можете подключиться к серверу базы данных, просто набрав ssh database.
Есть много опций, которые вы можете настроить в своем конфигурационном файле, например, если вы используете разные пары ключей для разных хостов, вы можете передать опцию IdentityFile, чтобы использовать этот конкретный ключ.
Host database
HostName db.example.com
Port 2222
User alok
Host bitbucket.com
IdentityFile /home/myname/.ssh/private-identity
Hostname bitbucket.com
User alok
Host github.com
Hostname github.com
IdentityFile /home/myname/.ssh/public-identity
Если хост находится за брандмауэром, прокси или шлюзом, и большинство портов заблокированы, вы можете создать ssh-туннель и перенаправить трафик через этот туннель.
Например, вы можете перенаправить локальный порт 3305 на localhos на удаленный порт 3306 для доступа к mysql.
создание туннеля ручным способом
ssh -f -N -L 3305:127.0.0.1:3306 user@remoteserevr.com
или вы можете настроить свой конфигурационный файл, чтобы легко создавать локальные туннели
Host dbtunnel
HostName database.example.com
LocalForward 3305 127.0.0.1:3306
User alok
Теперь вы можете создать туннель, просто набрав.
ssh -f -N dbtunnel
там есть много опций, которые вы можете передать,например вы можете установить тип шифра и X11, как опции в конфигурационном файле, вы можете увидеть полный список опций здесь, http://linux.die.net/man/5/ssh_config.
Используйте man ssh для просмотра других справочных страниц, связанных с ssh.
Host database
HostName host.example.com
Port 2222
User alok
ServerAliveInterval 120
LogLevel FATAL