Black Screen
Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Подключение через VPN Для подключения требуется модуль http://www.slax.org/modules/776/dl/pptp-1.7.2.lzm VPN-сервер по умолчанию - vpn.corbina.ru. Тестировалось и для vpn.corbina.com без изменения текста скрипта. Подправлены некоторые места. Возможно, работоспособен на линуксах с установленным перлом. В консоли набираем: Код: Код: #!/bin/bash #Кидаете в /usr/bin ## vpn configure #Запросит VPN-сервер, Логин и Пароль # vpn start запуск # vpn stop остановка # vpn status статус соединения LINK_NAME=vpn PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin" script_name=$0 check_vpn_run() { [ -f "/var/run/ppp-$LINK_NAME.pid" ] && return 0 return 1 } usage() { echo "Usage: $script_name {start|stop|configure|status}" exit 1 } configure_vpn() { # # #здесь надо создать директорию peers,если нет if [ ! -d "/etc/ppp/peers" ]; then mkdir /etc/ppp/peers fi touch /etc/ppp/peers/$LINK_NAME chmod 600 /etc/ppp/peers/$LINK_NAME echo -n 'VPN-server (vpn.corbina.ru): '; read vpn_server if [ $vpn_server="" ]; then vpn_server="vpn.corbina.ru" fi echo -n 'Login: '; read username stty -echo echo -n 'Password: '; read password; echo stty echo cat <<EOT > /etc/ppp/peers/$LINK_NAME noipdefault nodefaultroute noauth refuse-pap nobsdcomp nodeflate novj linkname $LINK_NAME user '$username' password '$password' updetach mtu 1464 pty 'pptp $vpn_server --nolaunchpppd --loglevel 0 --nobuffer --logstring pptp' EOT } start_vpn() { if [ ! -f "/etc/ppp/peers/$LINK_NAME" ]; then echo "$script_name: VPN-connection not configured" >&2 exit 1 fi default_gw=`route -n|awk '/^0\.0\.0\.0 .* eth/{print $2}'|head -1` if [ -z "$default_gw" ]; then echo "$script_name: No default route" >&2 exit 1 fi vpn_server=`awk '/pptp/ {print($3)}' /etc/ppp/peers/$LINK_NAME` pppd call $LINK_NAME status=$? if [ $status -ne 0 ]; then echo "$script_name: pppd error: $status" >&2 exit 1 fi if [ -f "/var/run/ppp-$LINK_NAME.pid" ]; then ppp_iface=`tail -1 /var/run/ppp-$LINK_NAME.pid` route add -host $vpn_server gw $default_gw route add -net default dev $ppp_iface fi } stop_vpn() { vpn_server=`awk '/pptp/ {print($3)}' /etc/ppp/peers/$LINK_NAME` pid=`head -1 /var/run/ppp-$LINK_NAME.pid` kill $pid route del -host $vpn_server route del -net default dev } status_vpn() { if check_vpn_run; then echo "VPN-connection is UP" else echo "VPN-connection is DOWN" fi } case "$1" in start) if check_vpn_run; then echo "VPN-connection already started" exit 0 fi start_vpn ;; stop) if check_vpn_run; then stop_vpn else echo "VPN-connection not started" fi ;; configure) configure_vpn ;; status) if check_vpn_run; then echo "VPN-connection is UP" else echo "VPN-connection is DOWN" fi ;; *) usage ;; esac #------------------------------------------------------------------------------------------------ # #Некоторые замечания. # # Параметр "mtu 1464" возможно будет нуждаться в коррекции. # Конфиг сохраняется в /etc/ppp/peers/vpn |
| Всего записей: 230 | Зарегистр. 22-02-2007 | Отправлено: 14:20 21-04-2007 | Исправлено: Firemanser, 12:48 04-07-2010 |
|