У меня есть сервер Ubuntu, работающий как маршрутизатор. На сервере я использую iptables и сервер DHCP 3.1.3, Samba 3.4.7 и OpenVPN 2.1.0.
У меня проблема с сервером Samba, который исчезает из списка браузера клиента VPN через некоторое время (более 20 минут). Единственное, что я замечаю странным в моем журнале iptables, это следующее:
[..] OUTPUT:DROP: IN= OUT=eth0 SRC=10.100.0.1 DST=10.50.0.255 LEN=78 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=UDP SPT=137 DPT=137 LEN=58
Если VPN-клиент повторно подключается, сервер Samba мгновенно появляется в списке браузера.
Сети: LAN и VPN находятся в своей собственной подсети. (10.50.0.0 и 10.100.0.0)
DHCP:
subnet 10.50.0.0 netmask 255.255.255.0 {
interface eth0;
range 10.50.0.2 10.50.0.239;
default-lease-time 6000;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 10.50.0.255;
option routers 10.50.0.1;
option domain-name-servers XXX.XXX.XXX.XXX, XXX.XXX.XXX.XXX;
option netbios-name-servers 10.50.0.1;
}
subnet 10.100.0.0 netmask 255.255.255.0 {
interface tap0;
range 10.100.0.2 10.100.0.239;
default-lease-time 6000;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 10.100.0.255;
option netbios-name-servers 10.100.0.1;
}
Iptables (с сохранением состояния):
iptables -A INPUT -i eth0 -s 10.50.0.0/24 -d 10.50.0.255/32 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i eth0 -s 10.50.0.0/24 -d 10.50.0.1/32 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 ! -s 10.50.0.0/24 -d 10.50.0.255/32 -j DROP
iptables -A INPUT -i tap0 -s 10.100.0.0/24 -d 10.100.0.255/32 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i tap0 -s 10.100.0.0/24 -d 10.100.0.1/32 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o tap0 ! -s 10.100.0.0/24 -d 10.100.0.255/32 -j DROP
LAN: Пользователь получает шлюз, DNS, NetBIOS (10.50.0.1) и т. Д. И перенаправляется в Интернет. (Работает на 100%)
OpenVPN сервер:
Клиент OpenVPN: Клиент использует keepalive (keepalive 10 120
)
Samba сервер:
[global]
server string = [NAME]
interfaces = 10.50.0.0/24, 10.100.0.0/24
bind interfaces only = Yes
security = SHARE
guest account = smbguest
syslog = 5
log file = /var/log/samba/log.%m
max log size = 1000
name resolve order = wins bcast lmhosts host
max ttl = 21600
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
lm announce = Yes
lm interval = 30
local master = No
domain master = No
dns proxy = No
wins support = Yes
invalid users = root
guest ok = Yes
hosts allow = 127.0.0.1, 10.50.0.0/24, 10.100.0.0/24
hosts deny = 0.0.0.0/0