Автор Тема: Пренасочване на vpn  (Прочетена 1166 пъти)

ktodorov

  • Напреднали
  • *****
  • Публикации: 36
    • Профил
Пренасочване на vpn
« -: Mar 21, 2007, 09:43 »
Здравейте '<img'>
Знае ли някой как с OpenBSD може да се направи следното:

   клиент
      ||
      ||
      ||
*интернет*
      ||
      ||
      ||
    ADSL
      ||
      ||
      ||
    /vr0/
  OpenBSD
    \de0\
      ||
      ||
      ||
    w2k3

На Windows 2003 е пуснат VPN сървър който е в локален домейн зад защитна стена.
Може ли с OpenBDS да се пренасочи заявка(диалконекция) на клиент който е извън локалната мрежа до сървъра който е зад защитната стена.
Клиента влиза с права на локалния домейн за да може да ползва ресурси намиращи се там, затова май не може VPN сървъра да е на защитната стена.
Потърсих из нета подобна информация, но не успях да намеря нещо което да сработи при мен. Нещата които опитвах бяха за PF, но нямам много опит с OpenBSD и може нещо да ми е убягнало.
Надявам се някой да знае как би могло да се направи това.
Активен

Hapkoc

  • Напреднали
  • *****
  • Публикации: 2117
    • Профил
Пренасочване на vpn
« Отговор #1 -: Mar 21, 2007, 10:30 »
Знаеш ли колко точно различни вида VPN има? Аз не знам (смисъл много са).

Дай малко по-конкретно - какъв е тоя VPN сървър, каква е заявката, която трябва да стигне до него, такива ми ти работи.



Активен

ktodorov

  • Напреднали
  • *****
  • Публикации: 36
    • Профил
Пренасочване на vpn
« Отговор #2 -: Mar 21, 2007, 11:13 »
Ползвам вградения "Routing and Remote Access" на Windows 2003 сървър.
Ако може да помогне, ето следното което работи с iptables:
'-A PREROUTING -t nat -p tcp --dport 1723 -i %(EXT_IF)s -j DNAT --to-destination %(VPN_SIP)s',
'-A PREROUTING -t nat -p gre -i %(EXT_IF)s -j DNAT --to-destination %(VPN_SIP)s',
'-A POSTROUTING -t nat -p tcp -o %(INT_IF)s --dport 1723 -j MASQUERADE',
'-A POSTROUTING -t nat -o %(INT_IF)s -p gre -j MASQUERADE',
'-A FORWARD -p tcp --dport 1723 -j ACCEPT',
'-A FORWARD -p 47 -j ACCEPT',
'-A INPUT -p 47 -j ACCEPT',
'-A FORWARD  -p all -s %(VPN_SIP)s -j ACCEPT'
Активен

Hapkoc

  • Напреднали
  • *****
  • Публикации: 2117
    • Профил
Пренасочване на vpn
« Отговор #3 -: Mar 21, 2007, 12:03 »
Нещо ей такова трябва да е:

Примерен код

int_if = "1.2.3.4"
ext_if = "5.6.7.8"
vpn_ip = "9.10.11.12"

rdr on $ext_if proto tcp from any to ($ext_if) port 1723 -> $vpn_ip
rdr on $ext_if proto gre from any to ($ext_if) -> $vpn_ip

nat on $int_if proto tcp from any to $vpn_ip port 1723 -> ($int_if)
nat on $int_if proto gre from any to $vpn_ip -> ($int_if)

pass in on $ext_if proto tcp from any to ($ext_if) port 1723 keep state
pass in on $ext_if proto gre from any to ($ext_if) keep state

pass out on $int_if proto tcp from ($int_if) to $vpn_ip port 1723 keep state
pass out on $int_if proto gre from ($int_if) to $vpn_ip keep state



Ще трябва да си го наместиш към текущите правила в PF (или да ги пуснеш тук).

п.п. тъй като гледам VPN-а е PPTP, това м/у другото.
Активен

ktodorov

  • Напреднали
  • *****
  • Публикации: 36
    • Профил
Пренасочване на vpn
« Отговор #4 -: Mar 22, 2007, 09:42 »
Благодаря Hapkoc '<img'>
Пробвах кода - работи '<img'>
Активен