Добро пожаловать на форум, Гость!
Войдите или зарегистрируйтесь!
Имя пользователя:   Пароль:  
Запомнить меня 




Начать новую тему Ответить на тему   [ Сообщений: 15 ]  На страницу
12
 След.
Автор Сообщение
 Заголовок сообщения: Настройка связки squid + sams + iptables
СообщениеДобавлено: 04 сен 2011, 17:33 
Юзер
Аватар пользователя
Статус: Не в сети

GeoIP: Russian Federation

Сообщений: 5

Зарегистрирован: 04 сен 2011, 17:28
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Подскажите, что я сделал не так: все работает (интернет раздается, снаружи все закрыто), но в обход squid, т.е. не могу порезать скорость и разграничить доступ.
Скорее всего проблема в настройке iptables...

Код:
#!/bin/sh
#
# Отчистка

iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
iptables -t nat -F PREROUTING
iptables -t nat -F POSTROUTING
iptables -t mangle -F

#
INET_IP="62.76.117.182"
INET_IFACE="eth1"
INET_BROADCAST="62.76.117.177"

#
LAN_IP="172.17.2.49"
LAN_IP_PORT_PROXY="172.17.2.49:3128"
LAN_IP_RANGE="172.17.0.0/18"
LAN_IFACE="eth2"

#
LO_IFACE="lo"
LO_IP="127.0.0.1"

###########################################################################
#
# Используемые модули.
#
/sbin/depmod -a     

#
/sbin/modprobe ip_tables
/sbin/modprobe ip_conntrack
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_mangle
/sbin/modprobe iptable_nat
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_limit
/sbin/modprobe ipt_state

#/sbin/modprobe ipt_owner
/sbin/modprobe ipt_REJECT
/sbin/modprobe ipt_MASQUERADE
/sbin/modprobe ip_conntrack_ftp
#/sbin/modprobe ip_conntrack_irc
/sbin/modprobe ip_nat_ftp
#/sbin/modprobe ip_nat_irc

###########################################################################
#
#
echo "1" > /proc/sys/net/ipv4/ip_forward

###########################################################################
#
# Блокируем все
#
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

#
# Создание цепочки для некорректных TCP протоколов
#

iptables -N bad_tcp_packets

#
# Создание цепочки для  ICMP, TCP и UDP протоколов
#

iptables -N allowed
iptables -N tcp_packets
iptables -N udp_packets
iptables -N icmp_packets

###########################################################################
#
# Распределение трафика по цепочкам
#

#
# Некоректные TCP протоколы
#

iptables -A bad_tcp_packets -p tcp --tcp-flags SYN,ACK SYN,ACK \
-m state --state NEW -j REJECT --reject-with tcp-reset
iptables -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j LOG \
--log-prefix "New not syn:"
iptables -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j DROP

#
# Остальные известные протоколы
#

iptables -A allowed -p TCP --syn -j ACCEPT
iptables -A allowed -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A allowed -p TCP -j DROP

#
# TCP протокол
#

iptables -A tcp_packets -p TCP -s 0/0 --dport 21 -j allowed
iptables -A tcp_packets -p TCP -s 0/0 --dport 22 -j allowed
iptables -A tcp_packets -p TCP -s 0/0 --dport 80 -j allowed
iptables -A tcp_packets -p TCP -s 0/0 --dport 113 -j allowed
iptables -A tcp_packets -p TCP -s 0/0 --dport 3128 -j allowed
iptables -A tcp_packets -p TCP -s 0/0 --dport 8080 -j allowed

#
# UDP протокол
#

iptables -A udp_packets -p UDP -s 0/0 --destination-port 20 -j ACCEPT
iptables -A udp_packets -p UDP -s 0/0 --destination-port 21 -j ACCEPT
iptables -A udp_packets -p UDP -s 0/0 --destination-port 53 -j ACCEPT
iptables -A udp_packets -p UDP -s 0/0 --destination-port 123 -j ACCEPT
iptables -A udp_packets -p UDP -s 0/0 --destination-port 2074 -j ACCEPT
iptables -A udp_packets -p UDP -s 0/0 --destination-port 4000 -j ACCEPT

#
# Блокирование служебных излишних запросов.
#

iptables -A udp_packets -p UDP -i $INET_IFACE -d $INET_BROADCAST \
--destination-port 135:139 -j DROP

#
# Блокирование внешних DHCP.
#

iptables -A udp_packets -p UDP -i $INET_IFACE -d 255.255.255.255 \
--destination-port 67:68 -j DROP

#
# ICMP протокол
#

iptables -A icmp_packets -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT
iptables -A icmp_packets -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT

###########################################################################
#
# Обработка входящих протоколов
#

#
# Перенаправление некоректных пакетов
#

iptables -A INPUT -p tcp -j bad_tcp_packets

#
# Правила для специальных сетей не является частью Интернета
#

iptables -A INPUT -p ALL -i $LAN_IFACE -s $LAN_IP_RANGE -j ACCEPT
iptables -A INPUT -p ALL -i $LO_IFACE -s $LO_IP -j ACCEPT
iptables -A INPUT -p ALL -i $LO_IFACE -s $LAN_IP -j ACCEPT
iptables -A INPUT -p ALL -i $LO_IFACE -s $INET_IP -j ACCEPT

#
# Специальные правила для запросов DHCP из локальной сети.
#

iptables -A INPUT -p UDP -i $LAN_IFACE --dport 67 --sport 68 -j ACCEPT

#
# Правила блокировки для входящих пакетов из Интернета.
#

iptables -A INPUT -p ALL -d $INET_IP -m state --state ESTABLISHED,RELATED \
-j ACCEPT

iptables -A INPUT -p ALL -i $INET_IFACE -j DROP

iptables -A INPUT -p TCP -i $INET_IFACE -j tcp_packets
iptables -A INPUT -p UDP -i $INET_IFACE -j udp_packets
iptables -A INPUT -p ICMP -i $INET_IFACE -j icmp_packets



#
# Блокирование широковещательных запросов из внешней сети.
#

iptables -A INPUT -i $INET_IFACE -d 224.0.0.0/8 -j DROP

#
# Блокирование "мертвых" неизвестных пакетов
#

iptables -A INPUT -m limit --limit 3/minute --limit-burst 3 -j LOG \
--log-level DEBUG --log-prefix "IPT INPUT packet died: "

###########################################################################
#
# Перенаправление некоректных TCP пакетов
#

iptables -A FORWARD -p tcp -j bad_tcp_packets

#
# Перенаправление остальных пакетов из ловальной сети
#

iptables -A FORWARD -i $LAN_IFACE -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

#
# Заворачивание портов на порт прокси-сервера
#

iptables -t nat -A PREROUTING -i $LAN_IFACE -p tcp -m multiport \
--dport 80,8080 -j DNAT --to $LAN_IP_PORT_PROXY

#
# Обработка "мертвых" пакетов из стандартных
#

iptables -A FORWARD -m limit --limit 3/minute --limit-burst 3 -j LOG \
--log-level DEBUG --log-prefix "IPT FORWARD packet died: "

###########################################################################
#
# Перенаправление некоректных TCP пакетов
#

iptables -A OUTPUT -p tcp -j bad_tcp_packets

#
# Обработка пакетов на выход
#

iptables -A OUTPUT -p ALL -s $LO_IP -j ACCEPT
iptables -A OUTPUT -p ALL -s $LAN_IP -j ACCEPT
iptables -A OUTPUT -p ALL -s $INET_IP -j ACCEPT

#
# Обработка "мертвых" пакетов.
#

iptables -A OUTPUT -m limit --limit 3/minute --limit-burst 3 -j LOG \
--log-level DEBUG --log-prefix "IPT OUTPUT packet died: "

###########################################################################
#
# Включить простой пересылки IP и трансляции сетевых адресов
#

iptables -t nat -A POSTROUTING -o $INET_IFACE -j SNAT --to-source $INET_IP

#
# Подмена TTL подписи в пакетах
#

iptables -t mangle -A PREROUTING -i $INET_IFACE -j TTL --ttl-set 64




Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Настройка связки squid + sams + iptables
СообщениеДобавлено: 05 сен 2011, 00:59 
Юзер
Аватар пользователя
Статус: Не в сети

GeoIP: Kyrgyzstan

Сообщений: 37

Зарегистрирован: 03 сен 2011, 22:30
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
А в squid у вас задан порт прокси? И какой?

И что дает iptables -nL?

Код:
# Заворачивание портов на порт прокси-сервера
#

iptables -t nat -A PREROUTING -i $LAN_IFACE -p tcp -m multiport \
--dport 80,8080 -j DNAT --to $LAN_IP_PORT_PROXY


Просто интересно почему вы используете DNAT? а не просто REDIRECT?
DNAT обычно используется для порт-мапинга.

у меня вот такое правило для заворота на squid:

$IPT -t nat -A PREROUTING -i $IN_ETH -p tcp --dport 80 -j REDIRECT --to-port $PROXY_PORT


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Настройка связки squid + sams + iptables
СообщениеДобавлено: 05 сен 2011, 09:11 
Бородатый сис
Аватар пользователя
Статус: Не в сети

GeoIP: Kyrgyzstan

Сообщений: 2902
Откуда: Из серверной
Зарегистрирован: 03 мар 2010, 15:12
Благодарил (а): 19 раз.
Поблагодарили: 122 раз.
ОС: RHEL 6.7
Wirrus писал(а):
iptables -t nat -A PREROUTING -i $LAN_IFACE -p tcp -m multiport \--dport 80,8080 -j DNAT --to $LAN_IP_PORT_PROXY

Не вижу определений последней переменной. Какой порт назначен сквиду для прозрачного проксирования и поддерживает ли вообще он его? squid.conf в студию!


Я не злопамятный, я просто часто ковыряю логи
Изображение


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Настройка связки squid + sams + iptables
СообщениеДобавлено: 05 сен 2011, 09:56 
Юзер
Аватар пользователя
Статус: Не в сети

GeoIP: Kyrgyzstan

Сообщений: 37

Зарегистрирован: 03 сен 2011, 22:30
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Он его вроде как определяет:

Цитата:
LAN_IP="172.17.2.49"
LAN_IP_PORT_PROXY="172.17.2.49:3128"
LAN_IP_RANGE="172.17.0.0/18"
LAN_IFACE="eth2"


Только я не пойму, зачем он на своей же машине делает порт-мапинг.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Настройка связки squid + sams + iptables
СообщениеДобавлено: 05 сен 2011, 10:23 
Бородатый сис
Аватар пользователя
Статус: Не в сети

GeoIP: Kyrgyzstan

Сообщений: 2902
Откуда: Из серверной
Зарегистрирован: 03 мар 2010, 15:12
Благодарил (а): 19 раз.
Поблагодарили: 122 раз.
ОС: RHEL 6.7
Stranger_v_night писал(а):
Он его вроде как определяет:
LAN_IP="172.17.2.49"
LAN_IP_PORT_PROXY="172.17.2.49:3128"
LAN_IP_RANGE="172.17.0.0/18"
LAN_IFACE="eth2"

Ой, сори, проглядел :-[

Stranger_v_night писал(а):
Только я не пойму, зачем он на своей же машине делает порт-мапинг.

Это нормально, просто человеку нужен сквид для более гибкого управления пользователями, для реализации кэша. Только вот судя по
Stranger_v_night писал(а):
LAN_IP_PORT_PROXY="172.17.2.49:3128"

сквид у него не настроен на прозрачность. Так что затор у него не в фаере а скорее всего именно в кальмаре.


Я не злопамятный, я просто часто ковыряю логи
Изображение


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Настройка связки squid + sams + iptables
СообщениеДобавлено: 05 сен 2011, 12:32 
Юзер
Аватар пользователя
Статус: Не в сети

GeoIP: Russian Federation

Сообщений: 5

Зарегистрирован: 04 сен 2011, 17:28
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Способ перенаправления неважен, можно и так:
Stranger_v_night писал(а):
А в squid у вас задан порт прокси? И какой?

И что дает iptables -nL?

Код:
# Заворачивание портов на порт прокси-сервера
#

iptables -t nat -A PREROUTING -i $LAN_IFACE -p tcp -m multiport \
--dport 80,8080 -j DNAT --to $LAN_IP_PORT_PROXY


Просто интересно почему вы используете DNAT? а не просто REDIRECT?
DNAT обычно используется для порт-мапинга.

у меня вот такое правило для заворота на squid:

$IPT -t nat -A PREROUTING -i $IN_ETH -p tcp --dport 80 -j REDIRECT --to-port $PROXY_PORT


Конфиг кальмара пока пуст... :

Код:
# created by SAMS _sams_ 2011-9-5 9:48:53
#
# Recommended minimum configuration:
#
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl localhost src ::1/128
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl to_localhost dst ::1/128

# Example rule allowing access from your local networks.
# Adapt to list your (internal) IP networks from where browsing
# should be allowed
#acl localnet src 10.0.0.0/8    # RFC1918 possible internal network
acl localnet src 172.17.0.0/16    # RFC1918 possible internal network
acl localadmin src 172.17.2.0/24    # RFC1918 possible internal network
#acl localnet src 192.168.0.0/16    # RFC1918 possible internal network
#acl localnet src fc00::/7   # RFC 4193 local private network range
#acl localnet src fe80::/10  # RFC 4291 link-local (directly plugged) machines

acl SSL_ports port 443
acl Safe_ports port 80        # http
acl Safe_ports port 21        # ftp
acl Safe_ports port 443        # https
acl Safe_ports port 70        # gopher
acl Safe_ports port 210        # wais
acl Safe_ports port 1025-65535    # unregistered ports
acl Safe_ports port 280        # http-mgmt
acl Safe_ports port 488        # gss-http
acl Safe_ports port 591        # filemaker
acl Safe_ports port 777        # multiling http
acl CONNECT method CONNECT

#
# Recommended minimum Access Permission configuration:
#
# Only allow cachemgr access from localhost
http_access allow localadmin
http_access allow localnet
http_access deny manager


# Deny requests to certain unsafe ports
http_access allow !Safe_ports

# Deny CONNECT to other than secure SSL ports
http_access deny CONNECT !SSL_ports

# We strongly recommend the following be uncommented to protect innocent
# web applications running on the proxy server who think the only
# one who can access services on "localhost" is a local user
#http_access deny to_localhost

#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#

# Example rule allowing access from your local networks.
# Adapt localnet in the ACL section to list your (internal) IP networks
# from where browsing should be allowed
http_access allow localnet
http_access allow localhost

# And finally deny all other access to this proxy
http_access deny all

# Squid normally listens to port 3128
http_port 3128

# We recommend you to use at least the following line.
hierarchy_stoplist cgi-bin ?

# Uncomment and adjust the following to add a disk cache directory.
#cache_dir ufs /var/spool/squid 100 16 256

# Leave coredumps in the first cache dir
coredump_dir /var/spool/squid

forwarded_for off
# Add any of your own refresh_pattern entries above these.
refresh_pattern ^ftp:        1440    20%    10080
refresh_pattern ^gopher:    1440    0%    1440
refresh_pattern -i (/cgi-bin/|\?) 0    0%    0
refresh_pattern .        0    20%    4320

visible_hostname proxy


настройки минимальны, авторизация по IP... проблема вскрылась: самс при реконфигурировании кальмара создает файлик с диапазонами ip пользователей, но в сам конфиги команду на разрешение с именем файлика не добавляет...

Закономерен вопрос: почему сейчас все работает? (в обход acl: работает с разных диапазонов вплоть до 128.128.128.0/24 - у одного из моих подразделений админ веселый)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Настройка связки squid + sams + iptables
СообщениеДобавлено: 05 сен 2011, 12:59 
Бородатый сис
Аватар пользователя
Статус: Не в сети

GeoIP: Kyrgyzstan

Сообщений: 2902
Откуда: Из серверной
Зарегистрирован: 03 мар 2010, 15:12
Благодарил (а): 19 раз.
Поблагодарили: 122 раз.
ОС: RHEL 6.7
исходя из всего предполагаю что причина сабжа именно в конфиге сквиды.

Код:
http_port 3128

под этими строчками надо добавить
Код:
http_port 3129 transparent

и натить 80 и 8080 порты именно на него!


Я не злопамятный, я просто часто ковыряю логи
Изображение


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Настройка связки squid + sams + iptables
СообщениеДобавлено: 05 сен 2011, 13:24 
Юзер
Аватар пользователя
Статус: Не в сети

GeoIP: Russian Federation

Сообщений: 5

Зарегистрирован: 04 сен 2011, 17:28
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Изменения не принесли результата... *WALL BREAK*

Raven писал(а):
исходя из всего предполагаю что причина сабжа именно в конфиге сквиды.

Код:
http_port 3128

под этими строчками надо добавить
Код:
http_port 3129 transparent

и натить 80 и 8080 порты именно на него!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Настройка связки squid + sams + iptables
СообщениеДобавлено: 05 сен 2011, 14:25 
Модератор
Аватар пользователя
Статус: Не в сети

GeoIP: Kyrgyzstan

Сообщений: 803

Зарегистрирован: 02 мар 2010, 16:13
Благодарил (а): 6 раз.
Поблагодарили: 12 раз.
в кальмара:
http_port $LAN_IP:3128 transparent

в iptables
iptables -t nat -A PREROUTING -s $NET -d! $LAN_IP -p tcp -m tcp --dport 80 -j REDIRECT --to-port 3128
либо
iptables -t nat -A PREROUTING -s $NET -d! $LAN_IP -p tcp -m multiport --dport 80,8080 -j REDIRECT --to-port 3128

Где LAN_IP - серый ип сервака
$NET - серая сетка.


Изображение

Home: Windows Heaven
Home: Debian 6
For Servers: Debian || RHEL Based || Gentoo || FreeBSD


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Настройка связки squid + sams + iptables
СообщениеДобавлено: 05 сен 2011, 14:29 
Юзер
Аватар пользователя
Статус: Не в сети

GeoIP: Kyrgyzstan

Сообщений: 37

Зарегистрирован: 03 сен 2011, 22:30
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Вы определитесь на каком порту слушает кальмар?
на 3128 или 3129?

Потому что вы заворачиваете на 3128, в конфиге кальмара пишете, что прозрачные порт 3129.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 15 ]  На страницу
12
 След.
   Похожие темы   Автор   Ответов   Просмотров   Последнее сообщение 
Перенесенная ^_^

в форуме Linux

root

3

38

02 мар 2010, 16:15

Gen1us2k Перейти к последнему сообщению

Нет новых непрочитанных сообщений в этой теме Доступен клиент мгновенного обмена сообщениями Tkabber 1.0

в форуме Новости *nix

[Ботя]

0

449

25 янв 2014, 00:00

Гость Перейти к последнему сообщению

Нет новых непрочитанных сообщений в этой теме Выпуск проприетарного дистрибутива Альт Образование 8.1

в форуме Новости *nix

[Ботя]

0

223

09 ноя 2016, 21:30

Гость Перейти к последнему сообщению



Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Собрано Raven. Русская поддержка phpBB
phpBB SEO