LINUX.ORG.RU

Вопрос о прокси (или около этого)


0

0

Ситуация такая - Есть у нас в городе сеть (~500 компов Win) ей заправляет фирма. Выход в инет через vpn соединение, оно у меня работает. Есть сайт нашей сети, где чат, и.т.п. он за локалкой - тоесть доступ к нему как и ко всему инету через vpn, но только посещение этого сайта бесплатно, в отличие от остального инета... На сервере *BSD. Ситуация такая, когда у людей в сети нет денег они не могут зайти на этот заветный сайт, вот я и хотел сделать свой комп по совместительству шлюзом для доступа людей у которых нет денег на счету к этому сайту... разумеется у меня для этого должны быть деньги на счету... и последнее - должна быть неплохая защита, и чтобы зайти через меня можно было бы только на этот сайт, и не пускать через меня в инет, а то кучу бабок просажу! Что в этой ситуации ставить? Proxy, какая у него должна быть настройка? (squid)? Или NAT здесь прокатит? Тоже какая тут конфигурация должна быть? Подскажите, плз....


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

Каким образом? примерчик можно? плз...

Dimaz-z
() автор топика

По-моему проше squid поставить, в acl настраиваешь доступ только к этому сайту и только с определенных ip-адрессов (типа 10.0.0.0/0.0.0.255 или еще как-там у вас)

mrco ★★
()

Как на *BSD - хз.
На iptables наверно так. Только адрес сайта надо знать - единственное неудобство (если несколько, то правило с $SITE придется повторить несколько раз).

-------------

#!/bin/sh

IPTABLES = /sbin/iptables
LOCAL_NET = 192.168.0.0/24
SITE = xxx.xxx.xxx.xxx

#Local interface
LAN = eth0
#Интерфейс наружу
WAN = ???

$IPTABLES -P INPUT ACCEPT
$IPTABLES -F INPUT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -F OUTPUT
$IPTABLES -P FORWARD ACCEPT
$IPTABLES -F FORWARD
$IPTABLES -F -t nat

$IPTABLES -X
$IPTABLES -Z

#Включаем форвардинг адресов
echo "1" > /proc/sys/net/ipv4/ip_forward
#Раз vpn, значит скорее всего адрес у тебя динамический и этот параметр не повредит
echo "1" > /proc/sys/net/ipv4/ip_dynaddr

#Пропускаем только пакеты с локальной сети с локального интерфейса идущие на порт 80 сайта SITE
$IPTABLES -A FORWARD -p tcp -s $LOCAL_NET -i $LAN -d $SITE --dport 80 -j ACCEPT

#Пока никто не научился ментально определять адрес... ;)
$IPTABLES -A FORWARD -p tcp -s $LOCAL_NET -i $LAN -m multiport --dport 42,53 -j ACCEPT

#Пропускаем назад только уже установленные соединения в локальную сеть и только с сайта $SITE
$IPTABLES -A FORWARD -p tcp -d $LOCAL_NET -s $SITE -m state --state ESTABLISHED,RELATED j ACCEPT

$IPTABLES -t nat -A POSTROUTING -o $WAN -j SNAT --to-source $LAN

--------------

Можно со сквидой - allow в ее настройках только на нужный сайт и редирект на порт 3128 с 80 (естественно, forward должен быть вырублен, а оперировать придется с input и output).

jackill ★★★★★
()

Здесь наверно проще iptables сделать:

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT --to-source 111.111.111.111

где -s ip с которых разрешен доступ и 111.111.111.111 адрес сервака к которому нужен доступ.

gfh ★★★
()

Лучше -- прокси. С соответствующими ACL.

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