LINUX.ORG.RU
ФорумAdmin

Доступ к серверу через Интернет SSH

 ,


0

1

Имеется сервер Debian с двумя сетевыми картами, одной подключен к провайдеру другой в локальную сеть. Нужно сделать удаленный доступ к серверу через ssh. Как сделать это через настройки роутера я знаю, а как в Debian немогу понять. Нужно соединить внешний IP c внутренним ip адресом сервера. Внешний IP 77.77.77.77:43222 <-> 192.168.1.10:22.
Подскажите как это сделать. Если это команда куда записать что бы при перезагрузки сервера все было сохранено.

Ответ на: комментарий от lvi

Добавь порт 43222 в настройках sshd

Нахрена? В вопросе ТС он на 22 порту сидит внутри сети - и пускай сидит. На маршрутизаторе только надо редирект на этот порт настроить.

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

Нахрена? В вопросе ТС он на 22 порту сидит внутри сети - и пускай сидит

И пусть сидит, что мешает еще порт добавить.

Имеется сервер Debian с двумя сетевыми картами, одной подключен к провайдеру другой в локальную сеть
Нужно сделать удаленный доступ к серверу через ssh.

lvi ★★★★
()

Разрешите направление пакетов:

sudo bash -c "echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf"
Для вступления в силу до перезагрузки:
sudo sysctl -w net.ipv4.ip_forward="1"
Необходимые пакеты:
sudo apt-get install -y mc iptables-persistent (предложит сохранить имеющиеся правила, соглашайтесь)
sudo mcedit /etc/iptables/rules.v4
Содежимое rules.v4 добавить примерно такое содержимое в вашем случае:
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A PREROUTING  -p tcp --source ip_с_которого_разрешаем_доступ -d 77.77.77.77 --dport 43222 -j DNAT --to 192.168.1.10:22
-A POSTROUTING -p tcp -d 192.168.1.10 -j MASQUERADE
Применяете правила:
sudo iptables-restore < /etc/iptables/rules.v4
После перезагрузки правила сохранятся.

Dimarius
()

Как сделать это через настройки роутера я знаю

И этого достаточно.

а как в Debian немогу понять

Ничего не трогать.

Нужно соединить

Не нужно «соединять».

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

Как сделать это через настройки роутера я знаю

И этого достаточно.

Как я понял. Если бы был роутер (коробочный), - то как два пальца..., а тут вместо него Debian.

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

Смотри:

Имеется сервер Debian
одной подключен к провайдеру
Нужно сделать удаленный доступ к серверу через ssh

Либо под словом «сервер» всегда имеется в виду шлюз, куда доступ и так уже есть, либо ТСу надо хотя бы немножко поднапрячься и написать подробнее, что именно у него есть и чего ему надо.

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

Разрешите направление пакетов:

Как понял, у сервера есть интерфейс с внешним IP, на него и стучимся. Зачем нат? Ну порт хочется позаковырестей, так добавить его в sshd и все дела. Я опять про свое.

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

Как сделать это через настройки роутера я знаю, а как в Debian немогу понять

Я про это. Звучит как, входим в настройки коробки и прописываем форвард портов.

В любом случае один интерфейс к провайдеру, т.е. - внешний. Какой и где роутер, - побоку, если у машины, на которую мы хотим зайти есть внешний IP.

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

Похоже вы не понимаете задачи.

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

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

У меня например 2 роутера сгорело, 1 аппаратный фаервол регулярными перезагрузками без причин достал, в результате вместо этих «недожелезок» поставил старый комп с 2 сетевухами на дебиан, настроил как шлюз - проблемы закончились.

И почему этого лучше не делать?

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

И почему этого лучше не делать?

Хотя бы потому что POSTROUTING

Ну и не надо предлагать то, что снесет ТС уже существующую конфигурацию iptables. Достаточно написать одну необходимую команду (iptables -t nat -A PREROUTING -d 77.77.77.77 -p tcp --dport 43222 -j DNAT --to 192.168.1.10:22) и помочь интегрировать ее в то, что уже есть, ну или оставить эту головную боль самому ТСу ;)

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

Похоже вы не понимаете задачи

Возможно. Но...

Имеется сервер Debian с двумя сетевыми картами
Нужно соединить внешний IP c внутренним ip адресом сервера
Если это команда куда записать что бы при перезагрузки сервера

Это это все не могу понять иначе, как Debian и сервер - одна машина. Надо пробросить на сервер, и как это сделать на самом сервере.

lvi ★★★★
()
Последнее исправление: lvi (всего исправлений: 1)
Ответ на: комментарий от anonymous

1) Человек просил, что бы настройки сохранились, по мне так это удобнее сделать в debian с помощью iptables-persistent и вообще удобно так iptables настраивать, видеть имеющиеся настройки в файле, его редактировать и потом применять изменения - классический метод. 2) А без POSTROUTING ответы как будут приходить? )) Человек просил метод, я ему его дал. Более подробного тут никто не предложил даже.

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

А без POSTROUTING ответы как будут приходить?

Маршрут пропиши на целевой машине, после все будет работать

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

Я смотрю у вас тут «весело». Только и про цепочку FORWARD не надо забывать.
ЗЫ И если уж писать правила для «неизвестного нам» то вот так будет правильней iptables -t nat -I PREROUTING

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