Пытаюсь настроить vpn между тонкими клиентами (на gentoo) и их сервером (debian lenny) для того,
чтобы пустить через ssh все их общение (графика X11, nfs, lpd, одна своя программа).
Решил для этого воспользоваться методом, описанным здесть: Вот.
Сделал не совсем так, как там, но принцип тот же.
Что сделал:
поставил ssh и pppd на клиент и сервер.
настроил безпарольный ssh (работает)
выключил у debian показ /etc/motd
(кстати - как его правильно выключить. чтобы bash не показывал? с ssh то понятно. в итоге сделал линк на /dev/null)
сделал юзера sshvpn на сервере, хоум ему, сделал скриптик:
Код: Выделить всё
amalthea:/opt/ssh-vpn# cat vpn.start
#!/bin/bash
/usr/bin/sudo /usr/sbin/pppd noauth 10.10.10.10:10.10.10.1и назначил его логин-шеллом юзеру sshvpn.
настроил sudo, чтобы sshvpn мог вызывать pppd без пароля - работает.
запускаю на клиенте комманду:
Код: Выделить всё
client ~ # /usr/sbin/pppd proxyarp updetach noauth pty "ssh -e none -o 'BatchMode=yes' -C -t -t sshvpn@amalthea.xxx.ru "и получаю:
Код: Выделить всё
Using interface ppp0
Connect: ppp0 <--> /dev/pts/1
LCP: timeout sending Config-Requests
Connection terminated.
Modem hangup
client ~ # Killed by signal 15.не работает :-(
в логах сервера.
/var/log/auth.log:
Код: Выделить всё
Oct 3 15:50:05 amalthea sshd[2885]: Accepted publickey for sshvpn from 172.16.18.61 port 52690 ssh2
Oct 3 15:50:05 amalthea sshd[2885]: pam_unix(sshd:session): session opened for user sshvpn by (uid=0)
Oct 3 15:50:31 amalthea sudo: sshvpn : TTY=pts/2; PWD=/opt/ssh-vpn; USER=root; COMMAND=/usr/sbin/pppd noauth 10.10.10.10:10.10.10.1
Oct 3 15:50:36 amalthea sshd[2885]: pam_unix(sshd:session): session closed for user sshvpn/var/log/syslog:
Код: Выделить всё
Oct 3 15:50:31 amalthea pppd[2890]: pppd 2.4.4 started by sshvpn, uid 0
Oct 3 15:50:31 amalthea pppd[2890]: Using interface ppp0
Oct 3 15:50:31 amalthea pppd[2890]: Connect: ppp0 <--> /dev/pts/2
Oct 3 15:50:36 amalthea pppd[2890]: Modem hangup
Oct 3 15:50:36 amalthea pppd[2890]: Connection terminated.в общем в логах ничего вразумительного.
нагуглил по этой ошибке только вот это:
Check if pty-redir works To check the pty-redir program you have to issue the following command: pty-redir /usr/bin/ssh -t -l vpn1 slave sudo /usr/sbin/pppd REMEMBER: You'll have to use the complete path to ssh (simply use what the command which ssh says)! Since you do not get any output from this command you have to have a look at the syslog on the slave if pppd fires up. You should get a similiar output like this one:
Apr 7 10:50:42 xbgh5088 sudo: vpn1 : TTY=ttyp3 ; PWD=/home/vpn1 ; USER=root ; COMMAND=/usr/sbin/pppd
Apr 7 10:50:42 xbgh5088 pppd[1879]: pppd 2.3.5 started by vpn1, uid 0
Apr 7 10:50:42 xbgh5088 pppd[1879]: Using interface ppp0
Apr 7 10:50:42 xbgh5088 pppd[1879]: Connect: ppp0 <--> /dev/ttyp3
Apr 7 10:51:12 xbgh5088 pppd[1879]: LCP: timeout sending Config-Requests
Apr 7 10:51:12 xbgh5088 pppd[1879]: Connection terminated.
Apr 7 10:51:13 xbgh5088 pppd[1879]: Exit.
Apr 7 10:51:13 xbgh5088 sshd2[1876]: Remote host disconnected: Connection closed.
комманды pty-redir у меня ни в дебиане ни в дженту нет, и я склонен считать, что, в общем то дело не в этом.
если у кого-нибудь есть какие мысли - буду очень рад их услышать, спасибо ;-)
P.S.
если ssh-ем подключиться под этим юзером, но все ок (с виду) - нас встречает радостный pppt и начинает флудить скобочками, лишнего ничего нет (типа того же motd).