Страница 1 из 1
проблема c АДСЛ, с tun0
Добавлено: 2007-04-12 12:34:54
AI
Подключаюсь
ppp -ddial <name>
по адсл мопеду, создается интерфейс tun0. Только вот все процессы, а именно named, apache и т.д. крутяться под своими учетками. Прав у них на tun0 как я понял нет, и поэтому они на этот интерфейс не цепляются.
Что делать в таком случае? У меня есть 2 варианта:
1. Пустить васех под рутом? Не дело..
2. Изменить права на tun0? А как это сделать?
Как эту проблему вообще решают?
Re: проблема c АДСЛ, с tun0
Добавлено: 2007-04-12 12:38:59
dikens3
AI писал(а):Подключаюсь
ppp -ddial <name>
по адсл мопеду, создается интерфейс tun0. Только вот все процессы, а именно named, apache и т.д. крутяться под своими учетками. Прав у них на tun0 как я понял нет, и поэтому они на этот интерфейс не цепляются.
Что делать в таком случае? У меня есть 2 варианта:
1. Пустить васех под рутом? Не дело..
2. Изменить права на tun0? А как это сделать?
Как эту проблему вообще решают?
Они вроде на все цепляются.(Т.е. не привязаны к интерфейсу)
Код: Выделить всё
# ifconfig
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1492
inet 82.208.x.x --> 213.177.127.118 netmask 0xffffffff
Opened by PID 416
Код: Выделить всё
# sockstat -4 | grep www
www httpd 43168 16 tcp4 *:80 *:*
www httpd 43153 16 tcp4 *:80 *:*
www httpd 43070 16 tcp4 *:80 *:*
www httpd 42907 16 tcp4 *:80 *:*
www httpd 42712 16 tcp4 *:80 *:*
www httpd 42711 16 tcp4 *:80 *:*
www httpd 42710 16 tcp4 *:80 *:*
www httpd 42709 16 tcp4 *:80 *:*
www httpd 42708 16 tcp4 *:80 *:*
Добавлено: 2007-04-13 13:57:56
AI
у меня тоже показывает что
*:80
*:53
а ни апач, ни днс не пашут. (проверял снаружи)
фаервол отключен ipfw add 1 pass all from any to any
Добавлено: 2007-04-13 14:45:30
dikens3
Как работает nat на PPPoE? Работает ли вообще?
rc.conf
Код: Выделить всё
# PPPoE
ppp_enable="YES"
ppp_profile="Internet"
ppp_mode="ddial"
ppp_user="root"
ppp_nat="YES"
default:
Internet:
set log Phase tun command
set device PPPoE:rl1
set authname login
set authkey password
set mru 1492
set mtu 1492
enable lqr
set lqrperiod 10
enable lqr echo
enable echo
set dial
set login
set timeout 0
set redial 0 0
# NAT
nat enable yes
nat log no
nat same_ports yes
nat unregistered_only yes
nat deny_incoming no
Добавлено: 2007-04-13 16:00:14
BAV_Lug
Я тоже помучался с натом (как раз через PPPoE ). В конце концов сделал криво, но зато работает.
1) Убрал из ppp.conf все упоминания о нате
2) Создал файлик x.natd.sh в /usr/local/etc/rc.d/ такого содержания
Код: Выделить всё
#!/bin/sh
natd -interface tun0 -f /usr/local/etc/natd.conf
В natd.conf у меня прописан редирект портов
3) Добавил в rc.conf
Код: Выделить всё
ppp_enable="YES"
ppp_mode="ddial"
ppp_profile="data" # Имя профиля в ppp.conf
Т.е. инет стартует раньше чем nat (успевает поднятся тунель) и все работает.
Но, еще раз повторюсь, решение кривое.
Добавлено: 2007-04-13 21:06:06
PSdok
а можно посмотреть
rc.firewall ?
Добавлено: 2007-04-14 16:07:56
BAV_Lug
tormozok писал(а):а можно посмотреть
rc.firewall ?
Он полностью практически основан на статье с этого сайта.
Вот что касается ната
Код: Выделить всё
LanOut="tun0"
IpOut="xx.xx.xx.xx"
....
# NAT только для внутреннего сервера 10.2.1.1
${FwCMD} add divert natd ip from 10.2.1.1 to any out via ${LanOut}
${FwCMD} add divert natd ip from any to ${IpOut} in via ${LanOut}
.....
# Ftp (на внутреннем сервере) проброс портов
${FwCMD} add allow tcp from any to ${IpOut} 21 via ${LanOut}
${FwCMD} add allow tcp from any to 10.2.1.1 21 via ${LanOut}
# Зеркало NOD32 (на внутреннем сервере) проброс портов
${FwCMD} add allow tcp from any to 10.2.1.1 9005 via ${LanOut}
${FwCMD} add allow udp from any to 10.2.1.1 9005 via ${LanOut}
Добавлено: 2007-04-15 17:55:53
PSdok
Что то не догоняю.
А разрешить работать по портам 80, 8080 ненадо?
Код: Выделить всё
${fwcmd} add pass tcp from any to any 80
${fwcmd} add pass tcp from any 80 to any
${fwcmd} add pass tcp from any to any 8080
${fwcmd} add pass tcp from any 8080 to any
Добавлено: 2007-04-15 20:46:53
BAV_Lug
tormozok писал(а):Что то не догоняю.
А разрешить работать по портам 80, 8080 ненадо?
Код: Выделить всё
${fwcmd} add pass tcp from any to any 80
${fwcmd} add pass tcp from any 80 to any
${fwcmd} add pass tcp from any to any 8080
${fwcmd} add pass tcp from any 8080 to any
Нет не надо. Хватает этих двух строк (для одной машины с адресом 10.2.1.1)
Код: Выделить всё
${FwCMD} add divert natd ip from 10.2.1.1 to any out via ${LanOut}
${FwCMD} add divert natd ip from any to ${IpOut} in via ${LanOut}