LINUX.ORG.RU
ФорумAdmin

VPN и маршрутизация


0

0

Помогите, народ, с маршрутизацией. Значит идея такая. На сервере крутится PPTPD, к нему подключается WinXP машина. Получаем адрес VPN соединения 10.0.1.1 интерфейс ppp0. В локалку сервер смотрит интерфейсом eth0 с адресом 10.0.0.1. Так же сервер имеет выход в инет через модемное соединение с локальным адресом INET_LOC_IP, удаленным адресом INET_REM_IP интерфейс ppp1. С сервера пинги в инет ходят нормально. Соотв. нужно выпустить WinXP машину через этот самый VPN наружу...как? Если n клиентких машин? Если все это за фаерволом (iptables)? Хотя фаервол лучшео ставить "на потом".

anonymous

Еще ведь NAT надо мутить...

anonymous
()

Включить форвард, сделать НАТ на ppp1 и радоваться жизни? :)

fagot ★★★★★
()

Я просто туннельное соединение маскировал на внутренний интерфейс (eth0). После этого машина с WinXP становилась вроде как частью локальной сети, но из этой самой сети всё равно не была видна. (Маскарад, он и в Африке маскарад)

Но у меня задача была через инет пробиться в сеть. Здесь задача обратная, но смысл от этого не меняется.

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

В общем я так и сделал, навесил масакарад на тунель. Сейчас через всю эту радость сижу, вроде работает...сейчас еще поковыряю и выложу rc.firewall, может чего недоглядел или как получше снаружи сеть/сервер защитить кто подскажет. Тперь надо сделать, что бы правила автоматом добавлялись при соединении через PPTP и само соединение с инетм автоматом поднималось, а при дисконекте обрывалось соеднинение с инетом и удалялись правила.

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

В общем выглядит вот так весь фаервол:

#!/bin/sh # rc.firewall - Initial Simple IP FireWall for iptables

################################################################ # Configuration options. #

# Internet configuration.

INET_IP="xxx.xxx.xxx.xxx" INET_IFACE="ppp1" INET_BROADCAST="255.255.255.255"

# LAN configuration LAN_IP="10.0.0.1" LAN_IP_RANGE="10.0.0.0/24" LAN_IFACE="eth0"

# VPN configuration VPN_IP="10.0.1.1" VPN_IP_RANGE="10.0.1.0/32" VPN_IFACE="ppp0"

# Lockalhost configuration LO_IFACE="lo" LO_IP="127.0.0.1"

# IPTables configuration IPTABLES="/sbin/iptables"

################################################################ # /proc setup # echo "1" > /proc/sys/net/ipv4/ip_forward

################################################################ # Rules set up #

# Flushing all chains $IPTABLES -F INPUT $IPTABLES -F OUTPUT $IPTABLES -F FORWARD $IPTABLES -F -t nat $IPTABLES -F -t mangle

$IPTABLES -Z

# Setting default policies $IPTABLES -P INPUT DROP $IPTABLES -P OUTPUT DROP $IPTABLES -P FORWARD DROP

# Creating chain for bad TCP packets $IPTABLES -N BAD_TCP_PACKETS

# Creating separated chains for TCP, UDP and ICMP to traverse $IPTABLES -N ALLOWED $IPTABLES -N TCP_PACKETS $IPTABLES -N UDP_PACKETS $IPTABLES -N ICMP_PACKETS

# >>> Creating content in useruserspecified chains <<<

# BAD_TCP_PACKETS chain $IPTABLES -A BAD_TCP_PACKETS -p TCP --tcp-flags SYN,ACK SYN,ACK \ -m state --state NEW -j REJECT --reject-with tcp-reset $IPTABLES -A BAD_TCP_PACKETS -p TCP ! --syn -m state --state NEW -j LOG \ --log-prefix "New not syn:" $IPTABLES -A BAD_TCP_PACKETS -p TCP ! --syn -m state --state NEW -j DROP

# ALLOWED chain $IPTABLES -A ALLOWED -p TCP --syn -j ACCEPT $IPTABLES -A ALLOWED -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT $IPTABLES -A ALLOWED -p TCP -j DROP

# TCP rules $IPTABLES -A TCP_PACKETS -p TCP -s $LAN_IP_RANGE --dport 6667 -j ALLOWED # IRC $IPTABLES -A TCP_PACKETS -p TCP -s $LAN_IP_RANGE --dport 21 -j ALLOWED # FTP $IPTABLES -A TCP_PACKETS -p TCP -s $LAN_IP_RANGE --dport 1723 -j ALLOWED # PPPoE $IPTABLES -A TCP_PACKETS -p TCP -s $LAN_IP_RANGE --dport 53 -j ALLOWED # DNS $IPTABLES -A TCP_PACKETS -p TCP -i $LAN_IFACE -m mac \ --mac-source XX:XX:XX:XX:XX:X --dport 22 -j ALLOWED # FTP

# UDP rules $IPTABLES -A UDP_PACKETS -p UDP -i $LAN_IFACE --dport 67 --sport 68 -j ACCEPT $IPTABLES -A UDP_PACKETS -p UDP -i $LAN_IFACE --dport 53 -j ACCEPT

# ICMP rules $IPTABLES -A ICMP_PACKETS -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT $IPTABLES -A ICMP_PACKETS -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT

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