LINUX.ORG.RU

Помогите пробросить vpn


0

0

Есть два сервака ... между ними куча рутеров с файрволами. Между серваками доступен тока ssh. Причем на обоих серваках я root.
На втором серваке есть pptp(vpn) сервер и куча клиентов.
В общем надо из локалки 192.168.0.0 ходить на VPN второго сервака т.е. попасть в сетку 192.168.4.0.(нужен не сервак, а машины из vpn подсети).
___________ ________ ___________
наша локалка | | | only 22| |192.168.3.1|--192.168.3.0
192.168.0.0--|192.168.0.1|--|firewall|--|192.168.4.1|--192.168.4.0 VPN
|___________| |________| |___________|


Пробывал пробросить порты, т.е. с 192.168.0.1 делал
ssh root@192.168.3.1 -2 -f -N -g -L 47:192.168.3.1:47
ssh root@192.168.3.1 -2 -f -N -g -L 1723:192.168.3.1:1723
Далее настроил на клиентах в качестве pptp сервера 192.168.0.1

Но при попытке подключения доходит до проверки пароля и мрет. Суда по логам не пробрасывается имеено gre
Aug 10 13:32:27 xxx pppd[4453]: Using interface ppp0
Aug 10 13:32:27 xxx pppd[4453]: Connect: ppp0 <--> /dev/pts/1
Aug 10 13:32:27 xxx pppd[4453]: Serial line is looped back.
Aug 10 13:32:27 xxx pppd[4453]: Connection terminated.
Aug 10 13:32:27 xxx pppd[4453]: Exit.
Aug 10 13:32:27 xxx pptpd[4452]: GRE: read(fd=6,buffer=804e620,len=8196) from PTY failed: status = -1
error = Input/output error, usually caused by unexpected termination of pppd, check option syntax and pppd logs
Aug 10 13:32:27 xxx pptpd[4452]: CTRL: PTY read or GRE write failed (pty,gre)=(6,7)
Aug 10 13:32:27 xxx pptpd[4452]: CTRL: Client 10.2.5.2 control connection finished

Есть предложения?

З.Ы. Все клиенты под Win XP

anonymous

Есть два сервака ... между ними куча рутеров с файрволами. Между серваками доступен тока ssh. Причем на обоих серваках я root.
На втором серваке есть  pptp(vpn) сервер и куча клиентов.
В общем надо из локалки 192.168.0.0 ходить на VPN второго сервака т.е. попасть в сетку 192.168.4.0.(нужен не сервак, а машины из vpn подсети).
	      ___________    ________	 ___________
наша локалка |           |  | only 22|  |192.168.3.1|--192.168.3.0
192.168.0.0--|192.168.0.1|--|firewall|--|192.168.4.1|--192.168.4.0 VPN
   	     |___________|  |________|	|___________|


Пробывал пробросить порты, т.е. с 192.168.0.1 делал
ssh root@192.168.3.1 -2 -f -N -g -L 47:192.168.3.1:47
ssh root@192.168.3.1 -2 -f -N -g -L 1723:192.168.3.1:1723
Далее настроил на клиентах в качестве pptp сервера 192.168.0.1

Но при попытке подключения доходит до проверки пароля и мрет. Суда по логам не пробрасывается имеено gre
Aug 10 13:32:27 xxx pppd[4453]: Using interface ppp0
Aug 10 13:32:27 xxx pppd[4453]: Connect: ppp0 <--> /dev/pts/1
Aug 10 13:32:27 xxx pppd[4453]: Serial line is looped back.
Aug 10 13:32:27 xxx pppd[4453]: Connection terminated.
Aug 10 13:32:27 xxx pppd[4453]: Exit.
Aug 10 13:32:27 xxx pptpd[4452]: GRE: read(fd=6,buffer=804e620,len=8196) from PTY failed: status = -1 
error = Input/output error, usually caused by unexpected termination of pppd, check option syntax and pppd logs
Aug 10 13:32:27 xxx pptpd[4452]: CTRL: PTY read or GRE write failed (pty,gre)=(6,7)
Aug 10 13:32:27 xxx pptpd[4452]: CTRL: Client 10.2.5.2 control connection finished

Есть предложения?

З.Ы. Все клиенты под Win XP

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

делается просто

pppd persist ifname pppw holdoff 13 idle 65536 connect-delay 13000 noauth nodetach debug pty 'ssh -t mylogin@intermediate.server.ru "ssh -t root@172.17.1.216 "pppd persist idle 65536 noauth 192.168.4.50:192.168.4.51" " '

(записать в одну строчку)
это пример где есть ещё промежуточный сервер с лоховским логином
если есть доступ сразу на твою рутову машину то проще:

pppd persist ifname pppw holdoff 13 idle 65536 connect-delay 13000 noauth nodetach debug pty "ssh -t root@192.168.1.1 "pppd persist idle 65536 noauth 192.168.6.66:192.168.6.13" "

не совсем понял твою диаграмму, так что вписал свои:

192.168.1.1 - второй сервер, за которым нужная сетка
192.168.6.66 - адрес ppp сервера
192.168.6.13 - адрес ppp клиента
ifname pppw имя ppp интерфейсв (если не работает - убрать)
потом надо прописать в клиентах сети gateway. Чтоб клиенты из разных подсетей знали, что пакеты надо слать через серверы (ну это понятно, думаю).
на серверах маршрутов не надо. т.к. оба интерфейса на одной машине.

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

ЗЫ. таким образом, между твоими рутовыми серверами образуется вполне здоровая сетка (ppp) полностью через ssh протокол через 22й порт.

Когда есть здоровая сетка, остальное - это уже фантазии. Можно полную подмену IP заголовков делать через iptables, чтоб, скажем, все думали, что ты из их сетки и т.д. И много чего ещё.

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

ещё одна приятная мелочь. чтоб ssh не просил пароль надо создать публичные ключи:

ssh-keygen -N '' -t dsa

потом содержимое ~/.ssh/id_dsa.pub засунуть в ~/.ssh/authorized_keys2 на целевой машине.

Если машин более 2, действие выполнять по цепочке.

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

scyld
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.