Мне нужно войти через SSH на сервер веб-хостинга. К сожалению, имя для входа соответствует домену, содержащему более 30 символов. Клиент OpenSSH в системе Linux на основе debian сокращает имя входа до 30 символов в обоих синтаксисах:
ssh login@example.com
ssh -l login example.com
Есть ли ограничение в спецификациях протокола SSH? Это лимит только OpenSSH? Это лимит имен пользователей системы на основе unix?
Есть ли способ обойти такое ограничение?
Для хоста вы можете проверить LOGIN_NAME_MAX через любой man useradd
или getconf LOGIN_NAME_MAX
, в Linux по большей части вы ограничены 32 символами. alias-hostname.example.com Однако одним из возможных обходных путей было бы поместить ваше имя пользователя в ~/.ssh/config
файл.
Я не знаю, может ли OpenSSH обрабатывать более длинное имя пользователя в файле конфигурации или нет. Но попробовать стоит.
Host alias-hostname.example.com
HostName realname.example.com
Port 875
User reallylongusername
Как только у вас будет ~/.ssh/config
файл, вы можете поговорить со своим хостом, используя ssh alias-hostname.example.com
или ssh realname.example.com
без необходимости указывать reallylongusername
или другие параметры в командной строке. Завершение табуляции также начнет работать для имени хоста, поэтому вы можете ввести ssh alias[tab]
и он расширится до ssh alias-hostname.example.com
.