У меня есть этот сервер (например, 44.44.44.44) с веб-сервером. Я направил pollnote.com
к серверу, чтобы получить доступ к моему веб-серверу. Все нормально работает.
Чтобы получить доступ к серверу, я добавил свой открытый ключ в .ssh/authorized_keys
так что я могу сделать ssh root@44.44.44.44
авторизоваться без проблем.
Проблема возникает, когда я пробую вот так: ssh root@pollnote.com
. Терминал просто ничего не отображает и ждет, пока я не решу отменить команду.
Что мне нужно сделать, чтобы получить доступ к серверу, используя доменное имя в качестве ссылки?
ОБНОВИТЬ
Я должен был упомянуть, что получаю доступ к серверу через CloudFlare. Может это актуально ..?
данные
➜ ~ dig pollnote.com
; <<>> DiG 9.9.5-9ubuntu0.1-Ubuntu <<>> mydomain.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56675
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;pollnote.com. IN A
;; ANSWER SECTION:
pollnote.com. 299 IN A 104.27.165.70
pollnote.com. 299 IN A 104.27.164.70
;; Query time: 54 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Thu Jul 30 19:12:38 CEST 2015
;; MSG SIZE rcvd: 73
➜ ~ ssh -vvv root@pollnote.com
OpenSSH_6.7p1 Ubuntu-5ubuntu1, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to pollnote.com [104.27.165.70] port 22.
Когда вы подключаетесь по IP-адресу, SSH-соединение идет напрямую на ваш сервер, но если вы используете доменное имя, оно проходит через защиту Cloudflare. Я предлагаю либо использовать direct.pollnote.com
(Я думаю, что CloudFlare создает его автоматически, но люди часто удаляют его) или добавьте свой собственный псевдоним, например ssh.pollnote.com
и отключите на нем защиту CloudFlare.
dtoubelisОтвет определенно решает эту проблему.
Дружественная поправка, рассмотрите возможность использования чего-то другого, кроме ssh.yourserver.com
так что потенциальным злоумышленникам будет сложнее определить IP-адрес вашего хоста.
Например, secret-circus-monkey.yourserver.com
.
См., Например, Правильная схема именования серверов; в частности, комментарий автора относительно векторов атак:
В статье мы упоминали, что наша схема именования также позволяет предотвратить непреднамеренное раскрытие информации, публично раскрывая только короткое случайное имя хоста, а функциональные имена разрешаются исключительно во внутренней сети.
Вы можете использовать что-то вроде этого Вот.
Если я попытаюсь подключиться к домену по SSH, наши IP-адреса будут отображаться, и это вызовет проблемы (то же самое произойдет с чем-то вроде ftp).
Я хотел добавить это как комментарий к ответу @ dtoubelis, но форматирование текста было слишком ограничительным, поэтому я добавляю его в качестве ответа.
В моем случае я добавил следующую запись DNS на экран «DNS» в Cloudflare:
Type Name Value TTL Status
CNAME ssh is an alias of mywebsite.com Automatic Grey
Я все еще не мог заставить его работать, пока не понял, что вам нужно изменить свою команду входа в ssh с:
ssh user@mywebsite.com
к
ssh user@ssh.mywebsite.com
.
Затем я добавил аналогичные записи CNAME для ftp и sftp, поэтому, например, имя хоста ftp в вашем ftp-клиенте изменится с:
mywebsite.com
к
ftp.mywebsite.com
.
Я не уверен, что вместо CNAME вы можете создать запись A, но, согласно Cloudflare.
Большое спасибо @dtoubelis за ответ.