The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Проблемы с доступом к серверу по SSH"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Сеть. проблемы, диагностика / Linux)
Изначальное сообщение [ Отслеживать ]

"Проблемы с доступом к серверу по SSH"  +/
Сообщение от dinoEx (ok) on 06-Ноя-13, 15:13 
Почитал форум и в поисковых системах, но толком пошагово нигде не описывается как бороться с проблемой. Поэтому решил опубликовать свой вопрос на форуме.

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

У меня есть сеть из 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

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

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

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от Pahanivo (ok) on 06-Ноя-13, 16:16 
> Connection refused

фаревол не дает

внешний_ip_сервера - что имеется ввиду?? если у вас оба компа за роутером (за натом), то айпи у них приватные, скорей всего в одной сети, но могут быть и в разных, поэтому сетевые настройки в студию

про проброс портов слабо понятно в связи с вышеописанным - пробрасывают порт снаружи в локалку, а не между хостами локалки

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от dinoEx (ok) on 06-Ноя-13, 18:07 
>> Connection refused
> внешний_ip_сервера - что имеется ввиду??

IP который виден из интернета 213.*.*.*

> если у вас оба компа за роутером (за натом), то айпи у них приватные, скорей всего в одной сети, но могут быть и в разных, поэтому сетевые настройки в студию

GNU nano 2.2.6          Файл: /etc/network/interfaces                        

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp


#ifconfig

eth0      Link encap:Ethernet  HWaddr 00:23:54:9a:3c:aa  
          inet addr:192.168.1.137  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::223:54ff:fe9a:3caa/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:946 errors:0 dropped:0 overruns:0 frame:0
          TX packets:469 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:100239 (97.8 KiB)  TX bytes:64204 (62.6 KiB)
          Interrupt:20 Memory:fe9c0000-fe9e0000

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:16 errors:0 dropped:0 overruns:0 frame:0
          TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:928 (928.0 B)  TX bytes:928 (928.0 B)

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

2. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от lavr email on 06-Ноя-13, 16:29 
>[оверквотинг удален]
> 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
> Роутер я настраивал давно. Что такое проброс портов и мост не знаю,
> но читал об этом. Как это осуществить, если потребуется, не в
> курсе.
> Буду признателен за пошаговую инструкцию по лечению данной проблемы.

не проблему нужно лечить, а лень, которая мешает читать документацию и главное
ДУМАТЬ.

Роутер у Вас раздает локальным компьютерам, адреса по DHCP из локальной сети,
допустим:

стационарный: 192.168.1.10
ноутбук: 192.168.1.20

допустим и там и там застартован демон sshd (openssh)

1) сохраните Вашу конфигурацию sshd_config

# cp /etc/ssh/sshd_config /etc/ssh/sshd_config.my_bad

2) верните взад стандартный конфиг

# cp /etc/ssh/sshd_config.orig /etc/sshd/sshd_config

и для начала в нем сделайте следующее:

Port 22
Port 2222

UseDNS no

3) выполните reload sshd

- теперь у Вас sshd демон будет слушать два порта на всех интерфейсах: 22/tcp (родной
ssh) и 2222/tcp (дополнительный на высоком порту, обычно для обхода firewall)

- конфигурация sshd_config стандартная, никаких непонятных Вам опций в конфигурации

4) проверьте что sshd слушает порты 22 и 2022

# telnet localhost 22
..приглашение openssh ...

# telnet localhost 2222
... аналогично верхнему ...

теперь тоже самое проделайте используя вместо localhost: 192.168.1.10 (для станционар. debian, вместо 192.168.1.10 - тот который у Вас)

аналогично можете и для ноутбука сделать.

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

Все, теперь если у Вас sshd застартован и настроен как сказано выше на обоих
компьютерах: стационар/debian и ноутбук/debian, можете заходить по ssh с одного на
другой

- используя стандартный порт 22/tcp

# slogin username@192.168.1.10

- используя порт 2222

# sloginp -p 2222 username@192.168.1.10

ps. Firewall на обоих компьютерах должен пропускать порты: 22 и 2222

pps. UseDNS = no чтобы не выполнять проверку в DNS на соответствие ip и hostname
AllowUsers *@127.0.0.1 *@192.168.1.20 (разрешить всем удаленным пользователям
адресов 127.0.0.1 и 192.168.1.20 заходить на мой ip по ssh

Все остальное, есть в FAQ, man и различных руководствах ssh/openssh в сети

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от dinoEx (ok) on 06-Ноя-13, 18:21 
Спасибо за подробную инструкцию, обязательно все попробую.
Пока вот что выдает из того, что есть на данный момент.

> 4) проверьте что sshd слушает порты 22 и 2022
> # telnet localhost 22
> ..приглашение openssh ...
> # telnet localhost 2222
> ... аналогично верхнему ...

root@host:/# telnet 192.168.1.137 2222
Trying 192.168.1.137...
Connected to 192.168.1.137.
Escape character is '^]'.
SSH-2.0-OpenSSH_6.0p1 Debian-4

Удалось подсоединиться через ssh с ноутбука на сервер по ip сервера: 192.168.1.137 2222

Остается решить задачу с коннектом по внешнему ip: 213.*.*.* по которому виден сервер из вне. Спасибо за помощь.
Сегодня попытаюсь, сделать коннект на ноутбуке к серверу с другого ip и вечером отпишусь.


Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

5. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от lavr email on 06-Ноя-13, 18:48 
>[оверквотинг удален]
> Trying 192.168.1.137...
> Connected to 192.168.1.137.
> Escape character is '^]'.
> SSH-2.0-OpenSSH_6.0p1 Debian-4
> Удалось подсоединиться через ssh с ноутбука на сервер по ip сервера: 192.168.1.137
> 2222
> Остается решить задачу с коннектом по внешнему ip: 213.*.*.* по которому виден
> сервер из вне. Спасибо за помощь.
> Сегодня попытаюсь, сделать коннект на ноутбуке к серверу с другого ip и
> вечером отпишусь.

чтобы снаружи была возможность заходить на домашний сервер debian, на роутере
нужно настроить portforwarding для 2222 и все.
Посмотрите настройки роутера, я специально написал про то чтобы dhcp отдавал
серверу debian конкретный статический адрес, чтобы можно было настроить проброс

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от dinoEx (ok) on 06-Ноя-13, 19:26 

> чтобы снаружи была возможность заходить на домашний сервер debian, на роутере
> нужно настроить portforwarding для 2222 и все.
>  Посмотрите настройки роутера, я специально написал про то чтобы dhcp отдавал
> серверу debian конкретный статический адрес, чтобы можно было настроить проброс

Мне подсказали, что у меня вообще не роутер, а точка доступа CISCO Linksys E1200 и проброс не вариант.

Попробую сделать как Вы говорить.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

7. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от lavr email on 06-Ноя-13, 19:36 
>> чтобы снаружи была возможность заходить на домашний сервер debian, на роутере
>> нужно настроить portforwarding для 2222 и все.
>>  Посмотрите настройки роутера, я специально написал про то чтобы dhcp отдавал
>> серверу debian конкретный статический адрес, чтобы можно было настроить проброс
> Мне подсказали, что у меня вообще не роутер, а точка доступа CISCO
> Linksys E1200 и проброс не вариант.

Вы что, не настраивали роутер?

Не знаю кто там Вам и что наговорил:

http://kb.linksys.com/Linksys/ukp.aspx?pid=80&app=vw&vw=1&lo...

...
9.  What is Port Forwarding?

Port Forwarding allows you to set up public services on your network, such as web servers, ftp servers, e-mail servers, or other specialized Internet applications.  To know the difference between Port Forwarding and Port Triggering, click here.  To learn how to set up Port Range Forwarding on a Linksys Wireless-N router, click here.

NOTE:  You can add up to 10 application names for Port Range Forwarding.  For Linksys E1200 v2, you can add up to 15 application names.

10. What is Port Triggering?

Port Triggering will forward port based on the incoming port specified.  Check your software application to find out what is necessary to enter in these fields.  You can set up to 10 port triggering entries.  To learn how to configure Port Range Triggering in your router’s web-based setup page, click here.

> Попробую сделать как Вы говорить.

Linksys Wi-Fi Router, E1200:

http://support.linksys.com/en-eu/support/routers/E1200

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от Дядя_Федор on 06-Ноя-13, 20:11 
> Мне подсказали, что у меня вообще не роутер, а точка доступа CISCO

Вы не правы. Это называется не "подсказали", а "ввели в заблуждение". :) Тоска доступа он со стороны "вайфайного" пространства. С точки зрения внутренней сети - это именно роутер. Выполняющий (в итоге, если опустить нюансы) трансляцию сетевых адресов внутренней (LAN) сети в один внешний, получаемый от провайдера, IP-адрес. Ну, есть выполняющий классический NAT. Дерзайте, юноша, дерзайте. Лавр вон Вам выше крыши информации накидал. Могут возникнуть проблемы с "динамикой" на WAN-интерфейсе, но и они решаемы вполне.

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

9. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от dinoEx (ok) on 08-Ноя-13, 10:26 

> чтобы снаружи была возможность заходить на домашний сервер debian, на роутере
> нужно настроить portforwarding для 2222 и все.
>  Посмотрите настройки роутера, я специально написал про то чтобы dhcp отдавал
> серверу debian конкретный статический адрес, чтобы можно было настроить проброс

Спасибо большое за советы. Все получилсь с заходами по локальным ip адресам. Но вот в роутере Cisco не знаю как настроить проброс портов. Чтобы можно было зайти с внешних Ip адресов. IP у меня на сервере статический 213.ххх.ххх.ххх, локальный на сервере 192.168.1.101 (он меняется, тоже надо как-то в роутере закрепить для этой машины, не знаю как).

Прошивка в роутере у меня на английском, который шатко валко знаю. В общем что куда только интуитивно по подсказкам смогу реализовать. Сейчас изучаю в интернете советы по пробросу портов, но пока нужной информации не нашел. С настройкой форвардинга понял, но где писать в роутере не знаю. Какие порты прокидывать тоже не знаю, пологаю что 2222 который я указал в sshd_config? От стандартного 22 я отказался в целях безопасности, надеюсь это верное решение :) Буду признателен и благодарен за дальнейшую помощь. Спасибо.

Еще в iptables не знаю как разрешить фильтр порта 2222 для внешних заходов, т.е. что бы фаервол фильтровал все заходы с разных статических ip на мой сервер. Защита тоже важно, все таки сервер.


Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

10. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от dinoEx (ok) on 08-Ноя-13, 11:51 
Так побегал по интернету и нашел статью про проброс портов через командную строку iptables. Очень лаконично и доходчиво. Не пробовал еще, но сейчас займусь этим. Вот сама статья

http://how-it.ru/public/root/307-probros_portov__port_forwar...

Я еще не разобрался в вопросе, но действую в этом направлении :)

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

11. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от lavr email on 08-Ноя-13, 11:57 
> Так побегал по интернету и нашел статью про проброс портов через командную
> строку iptables. Очень лаконично и доходчиво. Не пробовал еще, но сейчас
> займусь этим. Вот сама статья
> http://how-it.ru/public/root/307-probros_portov__port_forwar...
> Я еще не разобрался в вопросе, но действую в этом направлении :)

Вам проброс нужно сделать на E1200, зайти администратором на панель и через
менюшки настроить все что нужно.


Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

13. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от dinoEx (ok) on 08-Ноя-13, 12:09 

> Вам проброс нужно сделать на E1200, зайти администратором на панель и через
> менюшки настроить все что нужно.

Не подскажете куда там заходить? :) доступ к роутеру есть, а вот найти проброс где делать для меня логическая задача :)

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

14. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от Дядя_Федор on 08-Ноя-13, 12:25 
> Не подскажете куда там заходить? :) доступ к роутеру есть, а вот
> найти проброс где делать для меня логическая задача :)

Попробовать все-таки прочитать документацию (например, на сайте производителя) не пробовали? Или чтение документации (любой) - не Ваш метод?

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

15. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от dinoEx (ok) on 08-Ноя-13, 13:07 
>  Попробовать все-таки прочитать документацию (например, на сайте производителя) не пробовали?
> Или чтение документации (любой) - не Ваш метод?

Знаете, чтобы решить задачу 2+2, не обязательно читать про умножение и деление. У меня другая цель. Можно изучить все что связано с Линуксом и сетевыми настройками, перебирая мануалы по установочным пакетам и их настройкам, но на это нету времени. Меня интеересует только сервер с выходом из вне, желательно защищенный. Все это сугубо для личных нужд. Я не собираюсь строить из этого карьеру и в будущем заниматься профессией сисадмина. Самый короткий путь, это спросить у тех кто знает как это организовать, хотя никто не мешает лезть с гаечным ключем в машину и решать вопросы методом тыка. Я здесь потому что выбрал легкий путь. Изучение мануалов я бы оставил на потом и делать это по мере необходимости.

Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

16. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от lavr email on 08-Ноя-13, 13:50 
>[оверквотинг удален]
> У меня другая цель. Можно изучить все что связано с Линуксом
> и сетевыми настройками, перебирая мануалы по установочным пакетам и их настройкам,
> но на это нету времени. Меня интеересует только сервер с выходом
> из вне, желательно защищенный. Все это сугубо для личных нужд. Я
> не собираюсь строить из этого карьеру и в будущем заниматься профессией
> сисадмина. Самый короткий путь, это спросить у тех кто знает как
> это организовать, хотя никто не мешает лезть с гаечным ключем в
> машину и решать вопросы методом тыка. Я здесь потому что выбрал
> легкий путь. Изучение мануалов я бы оставил на потом и делать
> это по мере необходимости.

Самый легкий путь:

отправьте заявку в службу поддержки Вашего ISP чтобы прислали специалиста из саппорта,
который настроит все что Вам нужно для работы, а уж Вы потом изучите.

Это реально легкий путь благодаря которому, Вам не придется морочить голову другим.

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

17. "Проблемы с доступом к серверу по SSH"  –1 +/
Сообщение от dinoEx (ok) on 08-Ноя-13, 14:21 

> Самый легкий путь:
> отправьте заявку в службу поддержки Вашего ISP чтобы прислали специалиста из саппорта,
> который настроит все что Вам нужно для работы, а уж Вы потом
> изучите.
> Это реально легкий путь благодаря которому, Вам не придется морочить голову другим.

Это уже не совсем легкий путь :) вопрос остался открытым, если смогу его решить обязательно напишу готовое решение в этой теме. Всем спасибо.

Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

18. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от lavr email on 08-Ноя-13, 16:20 
>> Самый легкий путь:
>> отправьте заявку в службу поддержки Вашего ISP чтобы прислали специалиста из саппорта,
>> который настроит все что Вам нужно для работы, а уж Вы потом
>> изучите.
>> Это реально легкий путь благодаря которому, Вам не придется морочить голову другим.
> Это уже не совсем легкий путь :) вопрос остался открытым, если смогу

это САМЫЙ ЛЕГКИЙ путь, ничего изучать и ничего читать не надо, даже пальцами
и извилинами шевелить.

> его решить обязательно напишу готовое решение в этой теме. Всем спасибо.

В сети руководств по настройке роутеров Cisco-Linksys серии E - море.

Все что Вам нужно сделать, через браузер зайти на роутер, вероятно его
адрес 192.168.1.1:

http://192.168.1.1/

login: admin
password: xxxx

зайти в настройки DHCP и по макам debian-server и debian-notebook - выполнить
для них выдачу всегда одних и тех же адресов из 192.168.1.
Тогда, например: debian-server всегда будет получать от DHCP 192.168.1.7
а debian-notebook будет всегда получать 192.168.1.9

Ищем Games-Applications - внутри Port-Forwarding:

произвольно описываем наш сервис (который openssh на порту 2222):

openssh_2222 задаем входящий порт для forward: 2222 tcp
куда: 192.168.1.7 порт: 2222 tcp

применить.
Все, имеем форвард входящих tcp соединений по порту 2222 внутрь NAT'а
на debian-server: 192.168.1.7:2222 (порт 2222), радуемся.

Ну просто "чумовое руководство", про настройки openssh отписано ранее

ps. Ждем Вашего руководства с картинками или видео :-Q

Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

12. "Проблемы с доступом к серверу по SSH"  +/
Сообщение от dinoEx (ok) on 08-Ноя-13, 12:08 
> Так побегал по интернету и нашел статью про проброс портов через командную
> строку iptables. Очень лаконично и доходчиво. Не пробовал еще, но сейчас
> займусь этим. Вот сама статья
> http://how-it.ru/public/root/307-probros_portov__port_forwar...
> Я еще не разобрался в вопросе, но действую в этом направлении :)

Попробовал пробросить порты по этой статье и нифига н вышло, полез в инструкцию -h и поменял команды на такие

iptables -t nat -A PREROUTING -p tcp -m tcp -d 11.22.33.44 --dport 3389 -j DNAT --destination 192.168.0.1:3389
iptables -t nat -A POSTROUTING -p tcp -m tcp -s 192.168.0.1 --sport 3389 -j SNAT --source 11.22.33.44:3389


Выдает ошибки в обоих случаях:

iptables v1.4.14: multiple -d flags not allowed
iptables v1.4.14: multiple -s flags not allowed

Может кто знает как поступить в данной ситуации?

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру