Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2014-12-15 14:50:15

  kaziu - Użytkownik

kaziu
Użytkownik
Zarejestrowany: 2013-05-07

VPN PPTP - połączenie między klientami

Dzień dobry,

Mam problem z własną siecią VPN opartą na protokole PPTP. Mam w sieci serwer MS SQL, który znajduje się w wewnętrznej sieci LAN. Klienci, którzy łączą się z tym serwerem znajdują się w trzech lokalizacjach w Polsce. Chciałam spiąć wszystkich w jedną sieć VPN, tak aby klienci z innych lokalizacji mogli bez przeszkód korzystać z Subiekta.
Uruchomiłem serwer VPN PPTP na naszym firmowym serwerze dedykowanym. Każdy klient bez przeszkód łączy się z siecią VPN, otrzymuje swój stały adres IP (172.31.50.x). Może korzystać z bramki internetowej jaką jest serwer VPN. Niestety mimo wszystko połączenia między klientami nie działą (nie pingują się) mimo otwrtych firewall'i i wszelkich sprawdzeń.
Próbowałem nawet przekierować port 1433 MSSQL tak aby klienci łączyli się poprzez adres zewnętrzy serwera dedykowanego. Jednak i tak bez skutku, ponieważ Subiekt nie może się połączyć. Załączam swoje IPTables bo przypuszczam, że tutaj tkwi problem:

Kod:

### BEGIN INIT INFO
# Provides:          firewall
# Required-Start:    $all
# Required-Stop:     $all
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start iptables firewall
# Description:       Enable iptables firewall rules from firewall.
### END INIT INFO

#!/bin/sh

#czyszczenie firewalla
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F

#blokujemy
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

#ustawienia wstepne
#~~~~~~~~~~~~~
# wlaczenie w kernelu forwardowania
/bin/echo 1 > /proc/sys/net/ipv4/ip_forward

#ochrona przed atakiem typu Smurf
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

#nie akceptujemy pakietow "source route" (zmieniaja tablice routingu)
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route

#nie przyjmujemy pakietow ICMP redirect, ktore moga zmienic nasza tablice routi$
echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects

#wlaczamy ochrone przed blednymi pakietami ICMP error
echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses

#ochrona przed spoofingiem -kazdy interfejs sieciowy bedzie przyjmowal
#tylko te pakiety ktore znajduja sie w tablicy routingu
echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter

#wlacza logowanie dziwnych (spoofed, source routed, redirects) pakietow
echo 1 > /proc/sys/net/ipv4/conf/all/log_martians

#Blokada przed atakami typu SYN FLOODING
echo 1 > /proc/sys/net/ipv4/tcp_syncookies

#wlaczenie loopback
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT

#Dodanie do tablicy INPUT reguł wpuszczających pakiety należące do
#już nawiązanych (ESTABLISHED) połączeń.
iptables -A INPUT -p tcp -j ACCEPT -m state --state ESTABLISHED
iptables -A INPUT -p udp -j ACCEPT -m state --state ESTABLISHED
iptables -A INPUT -p icmp -j ACCEPT -m state --state ESTABLISHED
iptables -A INPUT -p icmp -j ACCEPT -m state --state RELATED

#strony www i dns
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -j ACCEPT

#http i https
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p udp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -p udp --dport 443 -j ACCEPT

#ftp
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -p udp --dport 20 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p udp --dport 21 -j ACCEPT

#smtp oraz pop3 - oba z ssl, IMAP
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -A INPUT -p udp --dport 25 -j ACCEPT
iptables -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -A INPUT -p udp --dport 110 -j ACCEPT
iptables -A INPUT -p tcp --dport 465 -j ACCEPT
iptables -A INPUT -p udp --dport 465 -j ACCEPT
iptables -A INPUT -p tcp --dport 995 -j ACCEPT
iptables -A INPUT -p udp --dport 995 -j ACCEPT
iptables -A INPUT -p tcp --dport 143 -j ACCEPT
iptables -A INPUT -p udp --dport 143 -j ACCEPT
iptables -A INPUT -p tcp --dport 993 -j ACCEPT
iptables -A INPUT -p udp --dport 993 -j ACCEPT

#NNTP
iptables -A INPUT -p tcp --dport 119 -j ACCEPT
iptables -A INPUT -p udp --dport 119 -j ACCEPT

#Wysokie porty, nikle zagrozenie
iptables -A INPUT -p tcp --dport 1024:65535 -j ACCEPT
iptables -A INPUT -p udp --dport 1024:65535 -j ACCEPT
iptables -A FORWARD -p tcp --dport 1024:65535 -j ACCEPT
iptables -A FORWARD -p udp --dport 1024:65535 -j ACCEPT

#odblokowanie PINGu
iptables -A INPUT -p icmp -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT

#smtp 587

iptables -A INPUT -p tcp --dport 587 -j ACCEPT
iptables -A INPUT -p udp --dport 587 -j ACCEPT

#MySQL

#iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
#iptables -A INPUT -p udp --dport 3306 -j ACCEPT

#VPN

iptables -t nat -A POSTROUTING -s 172.31.50.0/24 -j SNAT --to-source 37.xxx.xxx.xxx
iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
iptables -A INPUT -p udp --dport 1723 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 1723 -j ACCEPT
iptables -A OUTPUT -p udp --dport 1723 -j ACCEPT
iptables -I INPUT -p gre -j ACCEPT
iptables -I OUTPUT -p gre -j ACCEPT

#Reguły odpowiadające za udostępnianie połączenia

#iptables -t nat -A POSTROUTING -s 172.31.50.0/24 -j MASQUERADE
#iptables -A FORWARD -s 172.31.50.0/24 -j ACCEPT
#iptables -A FORWARD -i ppp+ -o eth0 -j ACCEPT
#iptables -A FORWARD -i eth0 -o ppp+ -j ACCEPT

#Przekierowanie portu VPN na serwer MSSQL port 1433

#iptables -t nat -A PREROUTING -p tcp -s 0/0 -d 37.xxx.xxx.xxx --dport 1433 -j DNAT -–to 172.31.50.5:1433
#iptables -t nat -A POSTROUTING -o ppp0 -d 172.31.50.5 -j SNAT --to-source 37.xxx.xxx.xxx
#iptables -t nat -A PREROUTING -i eth0 -p udp –-dport 1433 -j DNAT -–to-destination 172.31.50.5:1433
#iptables -t nat -A PREROUTING -d 37.xxx.xxx.xxx -p tcp -m tcp --dport 1433 -j DNAT --to-destination 172.31.50.5:1433

#iptables -t nat -A PREROUTING -p tcp --dport 1433 -j DNAT --to 172.31.50.5:1433
#iptables -A FORWARD -p tcp -d 172.31.50.5 --dport 1433 -j ACCEPT
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 1433 -j DNAT --to 172.31.50.5:1433
iptables -t nat -A PREROUTING -i eth0 -p udp --dport 1433 -j DNAT --to 172.31.50.5:1433
iptables -A FORWARD -i eth0 -o ppp0 -p tcp --dport 1433 -j ACCEPT
iptables -A FORWARD -i eth0 -o ppp0 -p udp --dport 1433 -j ACCEPT

#Reguły odpowiadające za udostępnianie połączenia

iptables -t nat -A POSTROUTING -s 172.31.50.0/24 -j MASQUERADE
iptables -A FORWARD -s 172.31.50.0/24 -j ACCEPT
iptables -A FORWARD -i ppp+ -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o ppp+ -j ACCEPT

Proszę o pomoc.

Offline

 

#2  2014-12-17 08:10:23

  qluk - Pan inż. Cyc

qluk
Pan inż. Cyc
Skąd: Katowice
Zarejestrowany: 2006-05-22

Re: VPN PPTP - połączenie między klientami

Między klientami? To zależy również od sposobu konfiguracji VPN, czy ma być izolacja czy nie. Tak przynajmniej wnioskuję jak piszesz o połączeniu między klientami. Ewentualnie jakiś drobny schemat.

Offline

 

#3  2014-12-17 09:28:11

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: VPN PPTP - połączenie między klientami

Ja tylko tak apropo tego skryptu fw, bo chyba wszyscy robią ten sam błąd. Jeśli już czyścicie reguły, to róbcie to przy zablokowanym ruchu. xD

W przypadku gdy najpierw czyścicie reguły via:

Kod:

iptables -F
iptables -X

A potem dajecie

Kod:

iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

To wasza zapora ma moment, w którym nie filtruje żadnych pakietów i dopuszcza wszystko jak leci co chyba nie jest zbyt bezpieczne. xD Jasne, że to jest ułamek sekundy ale, np. u mnie, 2-3 pakiety potrafiły trafić do mojego pc kompletnie niefiltrowane. Zatem zamieńcie sobie te regułki. xD

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)

[ Generated in 0.008 seconds, 11 queries executed ]

Informacje debugowania

Time (s) Query
0.00008 SET CHARSET latin2
0.00005 SET NAMES latin2
0.00126 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='13.58.188.166' WHERE u.id=1
0.00081 REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '13.58.188.166', 1732773334)
0.00058 SELECT * FROM punbb_online WHERE logged<1732773034
0.00070 SELECT topic_id FROM punbb_posts WHERE id=280090
0.00106 SELECT id FROM punbb_posts WHERE topic_id=26801 ORDER BY posted
0.00062 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=26801 AND t.moved_to IS NULL
0.00005 SELECT search_for, replace_with FROM punbb_censoring
0.00094 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=26801 ORDER BY p.id LIMIT 0,25
0.00085 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=26801
Total query time: 0.007 s