Назад | Перейти на главную страницу

ssh не может подключиться с использованием имени хоста

Я настраиваю какой-то сервер, но у меня возникла проблема с одним сервером.

Я устанавливаю локальный DNS-сервер, и когда я пытаюсь подключиться к этому серверу с ssh alpha@alpha.stvns.com, я получаю: Permission denied (publickey, keyboard-interactive).

Но когда я обращаюсь к нему как alpha@192.168.1.2, он отлично работает с Pubkey Auth. Странная часть - когда я подключаюсь к серверу git.stvns.com => имя хоста, управляемое сервером DNS, он будет нормально подключаться при использовании имени хоста.

Я использую ubuntu 10.04 amd64 в качестве основы для всего сервера, на самом деле это идентичные изображения, которые я сделал снимок из минимальной настройки, поэтому не могу винить ОС.

Я сравнил свои файлы sshd_config, но они почти идентичны, только место authorized_keys отличается, не могу винить это за возникновение проблем.

Локально я удалил свои known_hosts, связанные с DNS-сервером, и попытался снова безуспешно.

Это копия моего файла sshd_config, возможно, кто-то обнаружит ошибку:

Port                             22
Protocol                         2
HostKey                         /etc/ssh/ssh_host_rsa_key
HostKey                         /etc/ssh/ssh_host_dsa_key
UsePrivilegeSeparation          yes
LoginGraceTime                  20
PermitRootLogin                 no
RSAAuthentication               yes
RhostsRSAAuthentication         yes
HostBasedAuthentication         no
PubkeyAuthentication            yes
AuthorizedKeysFile              /etc/ssh/authorized_keys
PermitEmptyPasswords            no
PasswordAuthentication          no
StrictModes                     no
ClientAliveInterval             60
ClientAliveCountMax             0

# Host Specific !!!!!
ListenAddress                   192.168.1.61

# List of allowed users
AllowUsers                      alpha

# Lifetime and size of ephemeral version 1 server key
KeyRegenerationInterval 3600
ServerKeyBits 768

# Logging
SyslogFacility AUTH
LogLevel INFO

X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
#UseLogin no

# Allow client to pass locale environment variables
AcceptEnv LANG LC_*

Кто-нибудь встречал такую ​​же проблему? Или есть какой-нибудь совет?

Заранее большое спасибо!

бегать

пинг git.stvns.com

Вы видите 192.168.1.2 ip?

Я думаю, у вас нет проблем с ssh, у вас проблема с dns.

Какой днс сервер вы используете? (cat /etc/resolv.conf)

@Niels, проблема в том, что имя хоста на поле отличается, а запись DNS, которую мы имеем или пытаемся использовать по ssh, отличается.

Рассмотрим пример:

root@gw:~# cat /etc/hostname
gw.analytics.example.net

следующее продолжает терпеть неудачу, потому что в протоколе ssh оба получили проверенный сервер аутентификации клиента и наоборот.

    git:master=⚡ ssh gw.analytics.example.io -l root -i ~/.ssh/id_rsa.pub
ssh: Could not resolve hostname gw.analytics.example.io: nodename nor servname provided, or not known

Хотя у меня есть правильная запись DNS и я могу разрешить их вручную.

    git:master=⚡ dig gw.analytics.example.io

; <<>> DiG 9.9.7-P3 <<>> gw.analytics.example.io
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56491
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;gw.analytics.example.io.   IN  A

;; ANSWER SECTION:
gw.analytics.example.io. 263    IN  A   10.17.71.2

;; Query time: 2 msec
;; SERVER: 192.168.254.1#53(192.168.254.1)
;; WHEN: Mon Oct 02 10:47:04 +08 2017
;; MSG SIZE  rcvd: 69

Итак, я изменил имя хоста коробки в соответствии с DNS-именем, которое я пытаюсь использовать ssh. Он работает нормально.

root@gw:~# cat /etc/hostname
gw.analytics.example.io

и я могу войти

git:master=⚡ ssh gw.analytics.example.io -l root -i ~/.ssh/id_rsa.pub
root@gw:~# hostname
gw.analytics.example.io
root@gw:~# uptime
 03:13:59 up 46 min,  2 users,  load average: 0.39, 0.49, 0.35
root@gw:~#