Я пытаюсь подключиться к экземпляру GitLab с нестандартным портом с Mac. Я изучил документацию по .ssh / config и попробовал разные варианты, и я думаю, что моя конфигурация в порядке, но ssh все еще использует порт 22.
ssh -vv gitlab.braemer.myds.me
OpenSSH_7.9p1, LibreSSL 2.7.3
debug1: Reading configuration data /Users/andrey/.ssh/config
debug1: /Users/andrey/.ssh/config line 1: Applying options for *
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 48: Applying options for *
debug1: Connecting to gitlab.braemer.myds.me port 22.
ssh: connect to host gitlab.braemer.myds.me port 22: Connection refused
И конфигурация здесь:
cat ~/.ssh/config
Host *
Port 22
Host github.com-irondad
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_2
IdentitiesOnly yes
Host gitlab.braemer
HostName gitlab.braemer.myds.me
User git
IdentityFile ~/.ssh/id_rsa
IdentitiesOnly yes
Port 87111
Есть идеи, что не так?
Помимо проблем, на которые указал Майкл Хэмптон, когда файл конфигурации имеет несколько
применимые объявления для одного и того же параметра, используется первое. Поскольку объявление Port 22
в разделе Host *
предшествует объявлению Port 87111
в разделе Host gitlab.braemer
, раздел Объявление порта 22
всегда будет иметь приоритет. Из справочной страницы ssh_config (курсив добавлен):
Для каждого параметра будет использоваться первое полученное значение . В файлы конфигурации содержат разделы, разделенные "Host" спецификации, и этот раздел применяется только к хостам, которые соответствуют один из шаблонов, указанных в спецификации. Соответствующее имя хоста - значение, указанное в командной строке.
Поскольку используется первое полученное значение для каждого параметра, подробнее объявления, специфичные для хоста, должны быть даны в начале файл, а общие значения по умолчанию в конце .
Поэтому, если вы хотите включить настройки параметров по умолчанию в раздел Host *
, вы должны поместить его в конец файла. Или, в этом случае, просто оставьте его выключенным, так как порт 22 в любом случае используется по умолчанию.
Для полноты, проблемы, которые указал Майкл Хэмптон, заключаются в том, что для применения деклараций в файле конфигурации вы должны использовать имя из Заголовок раздела Host
, а не тот, который указан в объявлении HostName
, и номера портов увеличиваются только до 65535.
Вы не указали номер порта в своей команде.
Вы не указали альтернативное имя хоста, которое вы настроили в файле .ssh / config
в вашем команда.
Вы должны выполнить хотя бы одно из этих действий.
Вам также потребуется использовать действительный номер порта. Номера портов увеличиваются только до 65535.