Конфигурация на SQUID в Debian

Настройки свързвани с конфигуриране на вътрешна мрежа и Интернет.

Модератори: Freya, Kulu Ngile

Конфигурация на SQUID в Debian

Мнениеот Kulu Ngile » Вто 26, Сеп, 2006 16:32

Въведение
Squid e proxy server. Той разделя интернета на вътрешната мрежа на HTTP и FTP. По този начин няма пряк достъп до интернет.

Инсталиране на squid
Код за потвърждение: Избери целия код
apt-get install squid


Конфигурация

Конфигурационният файл на squid се намира в /etc/squid/squid.conf.
Конфигурационните секции са както следва
Код за потвърждение: Избери целия код
General

http_port 3128

icp_port 3130

htcp_port 4827

 

cache_mem 16 MB

refresh_pattern . 0 20% 8640

 

hierarchy_stoplist cgi-bin ?

acl QUERY urlpath_regex cgi-bin \?

no_cache deny QUERY

 

# snews 563

# gopher 70

# wais 210

acl www_ports 80 443

acl ftp_ports 21

acl localhost src 127.0.0.1/32

acl all src 0.0.0.0/0.0.0.0

acl manager proto cache_object

acl CONNECT method CONNECT

acl PURGE method PURGE

 

http_access allow manager localhost

http_access deny manager

http_access allow PURGE localhost

http_access deny PURGE

 Specials

acl executables url_regex [.]exe$

http_access deny executables

 

authenticate_program /usr/lib/squid/smb_auth -W DOMEIN -U SERVER

acl network proxy_auth REQUIRED

http_access allow users network

 

cache_peer proxy1.test.net parent 3128 7 no-query default

HTTP

acl wwwusers src 192.168.2.0/24

http_access allow wwwusers www_ports

FTP

ftp_user Squid@domain1.com

ftp_passive off

acl ftpusers src 192.168.2.0/24

http_access allow ftpusers ftp_ports

Deny all

never_direct allow all

always_direct deny all

http_access deny all

icp_access allow all

miss_access allow all



Източник: Основен
Ако съдбата е срещу теб, толкова по-зле за нея.

Изображение
APT HOWTO
Kulu Ngile
Унуфри
 
Мнения: 1233
Регистриран на: Съб 04, Мар, 2006 2:04
Местоположение: София

Мнениеот tolostoi » Сря 17, Яну, 2007 15:53

Няколко въпросчета ако може:
Машина която има интернет през ppp0 и кабелът от доставчикът е закачен на eth0 имам втора карта eth1 която ще ми е за вътрешната мрежа с адрес 192.168.1.1 маска 255.255.255.0.Инсталирам Squid и го кофигурирам по описаният по-горе начин.Редактирам /etc/sysctl.conf така
Код за потвърждение: Избери целия код
net.ipv4.ip_forward = 1
изпълнявам
Код за потвърждение: Избери целия код
sysctl -p
вече машината рутира правя си един скрипт за firewall и го добавям за изпълнение някъде със стартирането на машината.Ето го
Код за потвърждение: Избери целия код
#!/bin/bash
#изчиствам старите правила
iptables -F;
iptables -P INPUT ACCEPT;
iptables -P FORWARD ACCEPT;
iptables -P OUTPUT ACCEPT;
iptables -t nat -F;
iptables -t nat -P PREROUTING ACCEPT;
iptables -t nat -P POSTROUTING ACCEPT;
iptables -t nat -P OUTPUT ACCEPT;

iptables -t mangle -F;
iptables -t mangle -P PREROUTING ACCEPT;
iptables -t mangle -P INPUT ACCEPT;
iptables -t mangle -P FORWARD ACCEPT;
iptables -t mangle -P OUTPUT ACCEPT;
iptables -t mangle -P POSTROUTING ACCEPT;

#задавам политика
iptables -P INPUT DROP;

#задавам разрешените услуги
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT;
iptables -A INPUT -i lo -j ACCEPT;
iptables -A INPUT -i eth1 -j ACCEPT;
iptables -A INPUT -p icmp -j ACCEPT;
iptables -A INPUT -p tcp --destination-port 22 -m state --state NEW -j ACCEPT;
iptables -A FORWARD -s 192.168.1.0/24 -o ppp0 -j ACCEPT;
iptables -A FORWARD -d 192.168.1.0/24 -m state --state ESTABLISHED,RELATED -i ppp0 -j ACCEPT;
iptables -A FORWARD -s 192.168.1.0/24 -o eth0 -j ACCEPT;
iptables -A FORWARD -d 192.168.1.0/24 -m state --state ESTABLISHED,RELATED -i eth0 -j ACCEPT;
това достатъчно ли е или трябва да се маскира ppp0 за да имат интернет машините от вътрешната мрежа.Понеже не съм ползвал прокси не знам,този Squid колко място заема (знам че кешира) и какво трябва да се зададе допълнително на машина от мрежата за да ползва проксито.Ще сложа адрес на клиентската машина 192.168.1.2 netmask 255.255.255.0 и gw 192.168.1.1.
Аватар
tolostoi
Участник
 
Мнения: 329
Регистриран на: Пон 11, Дек, 2006 17:01
Местоположение: Варна

Мнениеот Kulu Ngile » Чет 18, Яну, 2007 19:08

Колко машини ще има вътрешната ти мрежа? #ако е една или две, не виждам смисъл от прокси
Ако съдбата е срещу теб, толкова по-зле за нея.

Изображение
APT HOWTO
Kulu Ngile
Унуфри
 
Мнения: 1233
Регистриран на: Съб 04, Мар, 2006 2:04
Местоположение: София

Мнениеот tolostoi » Чет 18, Яну, 2007 22:00

По скоро е за идеята,защото имаме мрежа тук 7-8 човека но аз не ползвам от там нет,евентуално да разбера как се конфигурира,ако им сецне техния да им пусна от мен.С nat съм правил но прокси ...
Аватар
tolostoi
Участник
 
Мнения: 329
Регистриран на: Пон 11, Дек, 2006 17:01
Местоположение: Варна

Мнениеот Kulu Ngile » Чет 18, Яну, 2007 22:58

Още не се оправям с iptables (имам доста работа и нямам никакво време да чета), но ето какво ползвам аз (много още трябва да се пипне). Все пак съм още доста начинаещ и не гарантирам за 100% сигурност на скрипта, но ще дойде време и това да стане
Код за потвърждение: Избери целия код
#!/bin/bash
echo "Setting up firewall rules..."
IPTABLES=/sbin/iptables
EXTERNAL_IFACE0=ppp0
EXTERNAL_IP=`/sbin/ifconfig ppp0 | grep 'inet addr' | awk '{print $2}' | sed -e 's/.*://'`
INT=eth1_rename
echo "Loading required stateful/NAT kernel modules..."

/sbin/depmod -a
/sbin/modprobe ip_tables
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_conntrack_irc
/sbin/modprobe iptable_nat
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_nat_irc

echo "    Enabling IP forwarding..."
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/ip_dynaddr

echo "    External interface: $EXTERNAL_IFACE0"
echo "       External interface IP address is: $EXTERNAL_IP"
echo "    Loading firewall server rules..."

UNIVERSE=" 0.0.0.0/0"

# Start with a tough policy.
$IPTABLES -P INPUT DROP
$IPTABLES -P FORWARD DROP
$IPTABLES -P OUTPUT ACCEPT

# clean up
$IPTABLES -F
$IPTABLES -X
$IPTABLES -Z

$IPTABLES -A INPUT -i lo -j ACCEPT
# remote interface, any source, going to permanent PPP address is valid
$IPTABLES -A INPUT -i $EXTERNAL_IFACE0 -s $UNIVERSE -d $EXTERNAL_IP -j ACCEPT
$IPTABLES -m state -A INPUT -i $EXTERNAL_IFACE0 --state ESTABLISHED,RELATED -j ACCEPT

# on ppp0, allow SSH,HTTP,MIRC and torrent
$IPTABLES -A INPUT -p tcp -m tcp --dport 22222 -i $EXTERNAL_IFACE0 -j ACCEPT
$IPTABLES -A INPUT -p tcp -m tcp --dport 80 -i $EXTERNAL_IFACE0 -j ACCEPT
$IPTABLES -A INPUT -p tcp -m tcp --dport 6890:6999 -i $EXTERNAL_IFACE0 -j ACCEPT
$IPTABLES -A INPUT -p tcp -m tcp --dport 6667:6669 -i $EXTERNAL_IFACE0 -j ACCEPT

# everywhere, allow ping and traceroute
$IPTABLES -A INPUT -p icmp -m icmp  --icmp-type 0               -j ACCEPT
$IPTABLES -A INPUT -p icmp -m icmp  --icmp-type 8               -j ACCEPT
$IPTABLES -A INPUT -p icmp -m icmp  --icmp-type 3               -j ACCEPT
$IPTABLES -A INPUT -p icmp -m icmp  --icmp-type 11              -j ACCEPT
$IPTABLES -A INPUT -p icmp -m icmp  --icmp-type 30              -j ACCEPT
$IPTABLES -A INPUT -p udp  -m state --state ESTABLISHED         -j ACCEPT
$IPTABLES -A INPUT -p icmp -m state --state RELATED,ESTABLISHED -j ACCEPT

# limit the number of incoming connections on port 22222 ( SSH ) to 3 attempts a minute
$IPTABLES -I INPUT -p tcp --dport 22222 -i $EXTERNAL_IFACE0 -m state --state NEW -m recent --set
$IPTABLES -I INPUT -p tcp --dport 22222 -i $EXTERNAL_IFACE0 -m state --state NEW -m recent --update --seconds 60 --hitcount 3 -j DROP

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -i ! $EXTERNAL_IFACE0 -j ACCEPT
iptables -A FORWARD -i $EXTERNAL_IFACE0 -o $INT -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A FORWARD -i $INT -o $EXTERNAL_IFACE0 -j ACCEPT

iptables -t nat -A POSTROUTING -o $EXTERNAL_IFACE0 -j MASQUERADE

iptables -A FORWARD -i $EXTERNAL_IFACE0 -o $EXTERNAL_IFACE0 -j REJECT

iptables -t mangle -A PREROUTING -i $EXTERNAL_IFACE0 -j TTL --ttl-inc 1
iptables -t mangle -A POSTROUTING -s 192.168.0.2 -o $EXTERNAL_IFACE0 -j TTL --ttl-set 64


DATE=(date +"%F %r")
echo "$DATE REBOOT 1.1.1.1" >> /var/log/check_ppp0


echo -e "    Firewall rules loading complete\n\n"
Ако съдбата е срещу теб, толкова по-зле за нея.

Изображение
APT HOWTO
Kulu Ngile
Унуфри
 
Мнения: 1233
Регистриран на: Съб 04, Мар, 2006 2:04
Местоположение: София


Назад към Мрежови настройки

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 1 госта

cron