skeletor писал(а): ↑21.04.2009 17:06
Наверное вы не понимаете суть прокси-сервера. Объясню: все входящие соединения в интернет на 80 порт вы перенаправляете (в вашем случае с помощью iptables) на прокси сервер (очень часто что это шлюз, а порт обычно 3128). Далее в конфиге squid'a вы прописываете, что слушать нужно порт 3128. Собственно http_port 192.168.0.1:3128, что бы применять авторизацию. Это в кратце.
1) правила файервола
вот правила файервола. думаю в таком виде хватит.
Код: Выделить всё
root@server-debian:/home/odmin# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:3128
LOG tcp -- anywhere anywhere tcp flags:FIN,SYN,ACK/SYN LOG level debug tcp-options
REJECT tcp -- anywhere anywhere tcp flags:FIN,SYN,ACK/SYN reject-with icmp-port-unreachable
Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT icmp -- 192.168.0.0/24 anywhere
ACCEPT icmp -- anywhere 192.168.0.0/24
ACCEPT udp -- 192.168.0.0/24 anywhere udp dpt:domain
ACCEPT udp -- anywhere 192.168.0.0/24 udp spt:domain
ACCEPT tcp -- 192.168.0.0/24 anywhere multiport dports ftp-data,ftp,smtp,www,pop3,http-alt
ACCEPT tcp -- anywhere 192.168.0.0/24 multiport sports ftp-data,ftp,smtp,www,pop3,http-alt
DROP !icmp -- anywhere anywhere state INVALID
DROP !icmp -- anywhere anywhere state INVALID
DROP all -- anywhere anywhere
DROP all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ну или в таком виде
Код: Выделить всё
root@server-debian:/home/odmin# iptables-save
# Generated by iptables-save v1.4.2 on Wed Apr 22 13:06:16 2009
*filter
:INPUT ACCEPT [2473:902546]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [2538:926210]
-A INPUT -i eth1 -p tcp -m tcp --dport 3128 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j LOG --log-level 7 --log-tcp-options
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -s 192.168.0.0/24 -i eth1 -p icmp -j ACCEPT
-A FORWARD -d 192.168.0.0/24 -o eth1 -p icmp -j ACCEPT
-A FORWARD -s 192.168.0.0/24 -i eth1 -p udp -m udp --dport 53 -j ACCEPT
-A FORWARD -d 192.168.0.0/24 -o eth1 -p udp -m udp --sport 53 -j ACCEPT
-A FORWARD -s 192.168.0.0/24 -i eth1 -p tcp -m multiport --dports 20,21,25,80,110,8080 -j ACCEPT
-A FORWARD -d 192.168.0.0/24 -o eth1 -p tcp -m multiport --sports 20,21,25,80,110,8080 -j ACCEPT
-A FORWARD -p ! icmp -m state --state INVALID -j DROP
-A FORWARD -p ! icmp -m state --state INVALID -j DROP
-A FORWARD -o eth0 -j DROP
-A FORWARD -o eth1 -j DROP
COMMIT
# Completed on Wed Apr 22 13:06:16 2009
# Generated by iptables-save v1.4.2 on Wed Apr 22 13:06:16 2009
*mangle
:PREROUTING ACCEPT [2527:906570]
:INPUT ACCEPT [2475:902626]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [2539:926250]
:POSTROUTING ACCEPT [2567:930316]
:outtos - [0:0]
:pretos - [0:0]
-A PREROUTING -j pretos
-A OUTPUT -j outtos
-A outtos -p tcp -m tcp --dport 22 -j TOS --set-tos 0x10/0xff
-A outtos -p tcp -m tcp --sport 22 -j TOS --set-tos 0x10/0xff
-A outtos -p tcp -m tcp --dport 21 -j TOS --set-tos 0x10/0xff
-A outtos -p tcp -m tcp --sport 21 -j TOS --set-tos 0x10/0xff
-A outtos -p tcp -m tcp --sport 20 -j TOS --set-tos 0x08/0xff
-A outtos -p tcp -m tcp --dport 20 -j TOS --set-tos 0x08/0xff
-A pretos -p tcp -m tcp --dport 22 -j TOS --set-tos 0x10/0xff
-A pretos -p tcp -m tcp --sport 22 -j TOS --set-tos 0x10/0xff
-A pretos -p tcp -m tcp --dport 21 -j TOS --set-tos 0x10/0xff
-A pretos -p tcp -m tcp --sport 21 -j TOS --set-tos 0x10/0xff
-A pretos -p tcp -m tcp --sport 20 -j TOS --set-tos 0x08/0xff
-A pretos -p tcp -m tcp --dport 20 -j TOS --set-tos 0x08/0xff
COMMIT
# Completed on Wed Apr 22 13:06:16 2009
# Generated by iptables-save v1.4.2 on Wed Apr 22 13:06:16 2009
*nat
:PREROUTING ACCEPT [114:13329]
:POSTROUTING ACCEPT [394:24994]
:OUTPUT ACCEPT [394:24994]
COMMIT
# Completed on Wed Apr 22 13:06:16 2009
2) ну если база создана, почему тогда там только логины?
этого я сам не понимаю. как sams записал свои данные, так я оставил. может добавить пароли вручную? никто так не пробовал?
Берется стандартный файл настроек сквида, в него вносятся программа авторизации, порт, редиректор. После этого запускается sams, который сам вносит необходимые изменения
это я встретил в одной из тем на форуме. поэтому на sams и понадеялся.
3) дык большое!!! попробуйте выбрать 53 порт
прописал порт 3128. насколько я помню 53 - это DNS? так зачем его использовать?