Использование различных параметров конфигурации ssh в зависимости от порта

У меня есть ситуация, когда мне приходится использовать разные учетные данные для входа на один и тот же IP-адрес в зависимости от порта, который я использую.

Итак, пример в командной строке будет выглядеть следующим образом:

ssh user1@192.168.1.2:22

и

ssh user2@192.168.1.2:2222

Я настроил следующее в моем файле ~ / .ssh / config: [ 116]

 Host "192.168.1.*"
   user user1
   IdentityFile ~/.ssh/id_user1
   PubkeyAuthentication yes

, который отлично работает для сценария user1 на порту 22, но есть ли способ настроить альтернативного пользователя и IdetityFile для user2 на порту 2222?

2
задан 3 July 2018 в 21:36

3 ответа

Я не пробовал, но я думаю, что опция HostName (см. man ssh_config может предоставить вам решение:

 Host "host22"
   Hostname "192.168.1.2"
   Port 22
   user user1
   IdentityFile ~/.ssh/id_user1
   PubkeyAuthentication yes
 Host "host2222"
   Hostname "192.168.1.2"
   Port 2222
   user user2
   IdentityFile ~/.ssh/id_user2
   PubkeyAuthentication yes

). С этим вы должны уметь:

[ 111]

или даже

ssh host22
ssh host2222

в качестве имени пользователя и порта указаны в файле конфигурации.

0
ответ дан 3 July 2018 в 21:36

Полагаю, мне следовало искать…

Порт сопоставления хоста конфигурации SSH на superuser.com получил ответ, который мне был нужен!

В основном вместо:

Host "192.168.1.*"

Я сейчас использую:

Match host "192.168.1.*" exec "test %p = 22"

и

Match host "192.168.1.*" exec "test %p = 2222"
0
ответ дан 3 July 2018 в 21:36

Полагаю, мне следовало искать…

Порт сопоставления хоста конфигурации SSH на superuser.com получил ответ, который мне был нужен!

В основном вместо:

Host "192.168.1.*"

Я сейчас использую:

Match host "192.168.1.*" exec "test %p = 22"

и

Match host "192.168.1.*" exec "test %p = 2222"
0
ответ дан 3 July 2018 в 21:36

Другие вопросы по тегам:

Похожие вопросы: