LINUX.ORG.RU
ФорумAdmin

Проблемы с доступом к серверу по SSH

 ,


0

1

Почитал форум и в поисковых системах, но толком пошагово нигде не описывается как бороться с проблемой. Поэтому решил опубликовать свой вопрос на форуме.

Проблема в следующем:

У меня есть сеть из 2 компьютеров: 1. сервер (стационарный комп., установлен debian wheezy, базовая с openssh-server) 2. клиент (ноутбук с wi-fi, Debian 7 Mint, с openssh-client)

Оба компьютера подключены к роутеру который раздает интернет (серверу по витой паре, ноутбуку по wi-fi адаптеру)

ip внешний, динамический, они оба на нем.

В /etc/ssh/sshd_config следующие настройки

#### Начало #####

port 2222 Protocol 2

HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_dsa_key HostKey /etc/ssh/ssh_host_ecdsa_key

UsePrivilegeSeparation yes KeyRegenerationInterval 3600 ServerKeyBits 768

SysLogFacillity AUTH LogLevel INFO

LoginGraceTime 60 PermitRootLogin no

AllowUsers serv45 (мой юзер serv45 на сервере, тут не разобрался кого указывать, того что коннектится на сервер или того что зарегистрирован на сервере)

StrictModes yes RSAAuthentication yes PubkeyAuthentication yes IgnoreRhosts yes RhostsRSAAuthentication no HostbasedAuthentication no

PermitEmptyPasswords no

ChallengeResponseAuthentication no

X11Forwarding yes X11DisplayOffset 10 PrintMotd no PrintLastLog yes TCPKeepAlive yes Banner /etc/motd.ssh

AcceptEnv LANG LC_* Subsystem sftp /usr/lib/openssh/sftp-server

UsePAM yes MaxAuthTries 6

#### Конец #####

Пробовал по рекомендация посмотреть на сервере, что выдает:

Запрос на сервере: root@хост.сервера:~# ssh -v внешний_ip_сервера -p 2222

Ответ сервера: OpenSSH_6.0p1 Debian-4, OpenSSL 1.0.1e 11 Feb 2013 debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for * debug1: Connecting to внешний_ip_сервера [внешний_ip_сервера] port 2222. debug1: connect to host внешний_ip_сервера port 2222: Connection refused ssh: connect to host внешний_ip_сервера port 2222: Connection refused

Я пробовал коннектиться с клиента (ноутбук):

Запрос с клиента: andrey@debian7:~# ssh -l serv45 внешний_ip_сервера -p 2222

Ответ: ssh: connect to host внешний_ip_сервера port 2222: Connection refused

Роутер я настраивал давно. Что такое проброс портов и мост не знаю, но читал об этом. Как это осуществить, если потребуется, не в курсе.

Буду признателен за пошаговую инструкцию по лечению данной проблемы.


На сервере выполните команду после попытки подключения с ноутбука: tail -n 40 -f /var/log/auth.log Вывод команды в студию.

sasha_danhil ()

внешний_ip_сервера — это динамический IP выдаваемый роутеру провайдером? Если на роутере не настроен проброс портов то подключиться по этому IP к серверу не получится, да и несли настроен то не факт что получится подключиться из внутренней сети.

Попробуй подключиться с ноута к серверу используя его внутренний IP, выдаваемый роутером (обычно что-то вроде 192.168.1.*), его можно узнать из вывода команды ifconfig на сервере.
По этому IP получится подключиться к серверу только из твоей сетки. Если хочешь подключаться из интернетов то придётся настраивать на роутере проброс портов. а так-же, если внешний IP динамический, dyndns (на роутере или на сервере).

MrClon ★★★★★ ()

рестартануть ssh после правки конфига, затем на сервере ssh - telnet 127.0.0.1 2222

vxzvxz ★★★ ()

Нехер подсоединяться на внешний адрес, который принадлежит шлюзу, ведь не факт что port 2222 пробрасывается не сервер и с маршрутами будет балаган.

sdio ★★★★★ ()

Обнаружен ботнет Обнаружил ботнет

настоятельно рекомендую отфармотировать жесткие диски и все переустановить.

anonymous ()

Если нужен коннект с ноута на стационарник подключайся по внутрениим адресам. Если нужен коннект по внешнему адресу то скорее всего пров тебе это сделать не даст как минимум пока ты не купешь статический ip. После этого на роутере тебе нужно настроить проброс порт_2222 -> ip_стационарника:порт_2222.

alozovskoy ★★★★★ ()
Ответ на: комментарий от sasha_danhil

я так понимаю слушает

tcp 0 0.0.0.0:2222 0.0.0.0:* LISTEN 18399/sshd

....

tcp6 0 0 :::2222 :::* LISTEN 18399/sshd

dinoEx ()
Ответ на: комментарий от sasha_danhil

Выдает такую запись:

__________________________

.....

login[2436]: pam_unix(login:auth): check pass; user unknown

login[2436]: pam_unix(login:auth): authentication failure; logname=LOGIN uid=0 euid=0 tty=/dev/tty1 ruser= rhost=

login[2436]: FAILED LOGIN (1) on '/dev/tty1' FOR 'UNKNOW', Authentication failure

login[2436]: pam_unix(login:session): session opened for user root by LOGIN(uid=0)

login[2648]: ROOT LOGIN on '/dev/tty1'

sshd[18399]:Server listening on 0.0.0.0 port 2222

sshd[18399]:Server listening on :: port 2222

sshd[18399]:Received signal 15; terminating.

CRON[18472]: pam_unix(cron:session): session opened for user root by (uid=0)

CRON[18472]: pam_unix(cron:session): session closed for user root

____________________________

вот такая запись

dinoEx ()
Ответ на: комментарий от alozovskoy

Получилось подсоединиться к серверу через внутренний ip.

Я не пробовал еще делать коннект с ноута с другого ip. Буду тестировать сегодня вечером. Это может помочь подсоединиться к внешнему ip сервера?

Пока остается вопрос с коннектом на внешний ip. Буду признателен за подробные разъяснения как это лучше сделать. Конфиги и другие настройки спрашивайте, обязательно скину в ответ. Роутер cisco Linksys E1200.

dinoEx ()
Ответ на: комментарий от dinoEx

Как прокинуть порты тебе следует самому посмотреть в документации к железке.

А про коннект к внешнему ip - позвони провайдеру и скажи, что тебе нужно подключаться к твоему хосту из внешней сети. Скорее всего они тебе скажут что нужен фиксированный внешний ip (или как там у них называется). Подключаешь эту услугу, настраиваешь свой шлюз и все ОК.

alozovskoy ★★★★★ ()
Ответ на: комментарий от teamfighter

Когда покупал мне сказали роутер :)

Я не знаю в чем разница, но к внешнему ip сервера мне через ssh не подсоединиться.

dinoEx ()
Ответ на: комментарий от sasha_danhil

Сегодня попробовал подсоединиться к серверу с другого внешнего ip по ssh. Вот результат:

root@localhost:# ssh -l timb -p 2222 213.*.*.* ssh: connect to host 213.*.*.* port 2222: Connection timed out

похоже на то, что сервер вообще не прослушивается.(он включен)

dinoEx ()
Ответ на: комментарий от dinoEx

AllowUsers serv45

Это локальный юзер под которым вы будете заходить на сервер. Конечно же он должен существовать на сервере. У меня, например, так:

root@deb:~# grep black /etc/passwd
black:x:1000:1000:black,,,:/home/black:/bin/bash
root@deb:~# grep black /etc/ssh/sshd_config
AllowUsers black
root@deb:~#

Подключайтесь так:

ssh serv45@77.77.88.88

black_13 ()

Роутер я настраивал давно. Что такое проброс портов и мост не знаю, но читал об этом. Как это осуществить, если потребуется, не в курсе.

Открываете инструкцию к роутеру и читаете, как на нём пробросить порт 2222 наружу. Готово.

Не забудьте приобрести у провайдера внешний IP-адрес, если хотите подключаться откуда-то ещё, кроме внутренней локальной сети провайдера.

AITap ★★★★★ ()
Последнее исправление: AITap (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.