|
|
|
iptables, squid3 - авторизация mail.ru
|
|||
|---|---|---|---|
|
#18+
Проблема с авторизацией на сайте mail.ru В офисе около 30-50 чел. пользуются почтой от mail.ru При повторной авторизации к почте вылазиет ошибка не правильно введёных iptables#!/bin/sh PATH=/usr/sbin:/sbin:/bin:/usr/bin #FTP modprobe nf_conntrack_ftp modprobe nf_nat_ftp echo "1" > /proc/sys/net/ipv4/ip_forward #Первым делом очистим существующую таблицу правил: # delete all existing rules. # iptables -F iptables -F -t nat iptables -t mangle -F iptables -X # Добавляем первое правило которое позволит нам не потерять удаленный контроль над сервером iptables -A INPUT -p tcp -i eth0 --dport 20 -j ACCEPT iptables -A INPUT -p tcp -i eth0 --dport 21 -j ACCEPT # Пропускаем обратную петлю iptables -A INPUT -d 127.0.0.1 -j ACCEPT #Разрешить входящие пакеты из локальной сети #iptables -A INPUT -i eth0 -s 192.168.1.0/24 -j ACCEPT iptables -A FORWARD -i eth0 -p tcp --dport 21 -j ACCEPT iptables -A FORWARD -i eth0 -p tcp --dport 4455 -j ACCEPT #Если пытаемся подключиться из локальной сети к внешнему IP с пробрасываемым портом, то делаем это от лица роутера iptables -t nat -A POSTROUTING -d 192.168.1.4 -s 192.168.1.0/24 -p tcp --dport 21 -j SNAT --to-source 192.168.1.1 iptables -t nat -A POSTROUTING -d 192.168.1.4 -s 192.168.1.0/24 -p tcp --dport 20 -j SNAT --to-source 192.168.1.1 #Разрешаем форвардинг уже инициализированных соединений iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT # Пропускаем пакеты уже установленных соединений iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # Пускаем локалку ######iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT iptables -A INPUT -i eth1 -p tcp -s *IP_ADDRESS* -d 0/0 --dport 21 -j ACCEPT iptables -A INPUT -i eth1 -p tcp -s *IP_ADDRESS* -d 0/0 --dport 20 -j ACCEPT # Allow UDP, DNS and Passive FTP #iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT # Прописываем политики по умолчанию: # Принимать все пакеты, которые инициированы из уже установленного соединения, и имеющим признак ESTABLISHED. # Состояние ESTABLISHED говорит о том, что это не первый пакет в соединении. #iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT #Запрешаем на передачу всё, что не разрешено. #iptables -P INPUT DROP iptables -P FORWARD ACCEPT iptables -P OUTPUT ACCEPT # Разрешаем хождение трафика по localhost #iptables -A INPUT -i lo -j ACCEPT #Разрешаем пинг(DROP - запретить) iptables -A INPUT -i eth1 -p icmp --icmp-type 8 -j ACCEPT # NAT iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to *IP_ADDRESS* iptables -t nat -A PREROUTING -i eth1 -s 192.168.1.0/24 -p tcp -d 0.0.0.0/0 --dport 80 -j REDIRECT --to-port 3128 # MTU iptables -t mangle -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu iptables -t mangle -I POSTROUTING -o eth0 -j TTL --ttl-set 64 squid3.conf # минимальная конфигурация # у меня в фале 'deny_inet_hosts1' хранятся IP адреса не имеющие доступа в интернет # как оказалось сквид всеравно пробрасывал их в интернет, пришлось прикрутить # этот список к Squid'у acl bn1 src "/etc/deny_inet_hosts1" # описываем сети acl Net1 src 192.168.1.1 # а тут описываем привилегированных пользователей админов и начальство acl Admins src 192.168.1.2 192.168.1.3 192.168.1.4 192.168.1.5 192.168.1.7 192.168.1.8 192.168.1.10 192.168.1.22 192.168.1.32 acl unlck src 192.168.1.129 192.168.1.211 192.168.1.230 192.168.1.38 acl manager proto cache_object # описываем локалхост acl localhost src 127.0.0.1/32 acl to_localhost dst 127.0.0.0/8 # описываем запрет к отвлекающим от работы сайтам acl zapret dstdomain .facebook.ru .facebook.com .vkontakte.ru .tatarlove.ru .vk.com .odnoklassniki.ru .youtube.com .youtube.ru .torrents.local .rutacker.org. .video.yandex.ru .i.tut.by ################# PORTS ################## # Открываем нужные порты acl SSL_ports port 443 563 #acl SSL_for_client_banks port 910 8443 4500 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 Jabber_ports port 5222 #jabber acl Pop_ports port 110 # acl Smtp_ports port 25 # acl Icq_ports port 5190 # # разрешаем соединение типа CONNECT для нужных протоколов acl CONNECT method CONNECT #http_access allow CONNECT Jabber_ports http_access allow CONNECT Icq_ports http_access allow CONNECT Pop_ports http_access allow CONNECT Smtp_ports ############### ACCESS CONTROLL############ # назначаем права доступа # пропускаем sqstat http_access allow manager localhost http_access deny manager # запрещаем досуп к сайтам http_access deny zapret !Admins !unlck # зарубаем все порты кроме safe_ports http_access deny !Safe_ports # зарубаем конект кроме как к SSL http_access deny CONNECT !SSL_ports # блокирум IP адреса не имеющие доступа в интернет http_access deny bn1 # разрешаем инет сетям http_access allow Net1 icp_access deny all htcp_access deny all # delay_pools 2 delay_class 1 2 delay_parameters 1 -1/-1 -1/-1 delay_access 1 allow Admins delay_access 1 deny all delay_class 2 2 delay_parameters 2 -1/-1 64000/1000000 delay_access 2 allow Net1 delay_access 2 deny all http_access allow all ############### NETWORK OPTIONS ############# # настройка порта для прокси http_port 3128 transparent ##### OPTIONS WHICH AFFECT THE NEIGHBOR SELECTION ALGORITHM ##### # pfghtoftv r'ibhjdfnm CGI-скрипты hierarchy_stoplist cgi-bin ? acl QUERY urlpath_regex cgi-bin \? no_cache deny QUERY ########### MEMORY CACHE OPTIONS ########### # размер ОЗУ под кэш (по default 8 Мв) cache_mem 32 MB # ############ DISK CACHE OPTIONS ############### # Max размер объекта записываемого в кэш maximum_object_size 16384 KB # Место кэша и размер 50 Гб 16 директорий 1-го уровня 256 2-го cache_dir ufs /var/spool/squid3/cache 50000 16 256 # Адрес пользователя ответственного за очистку переполненого кэша #cache_mgr root@test.ru # Пользователь от имени какого работает Squid cache_effective_user proxy # Разрешаем управлять кэшем с помощью cachemgr.cgi с паролем "passwd" #cachemgr_passwd passwd all ################ LOGFILE OPTIONS #################### # Лог доступа к кэшу cache_access_log /var/logs/squid3/access.log # Лог работы кэша cache_log /var/logs/squid3/cache.log # Лог работы менеджера кэша cache_store_log none # Ротация логов logfile_rotate 10 #mime_table /etc/squid3/mime.conf #pid_filename /var/run/squid3.pid ########## OPTIONS FOR FTP GATEWAYING ############## # Под этим юзером ходим в Ftp #ftp_user vasa@pupkin.ru # Разрешаем пассивный режим работы FTP ftp_passive on ftp_sanitycheck on ftp_list_width 32 ########## OPTIONS FOR URL REWRITING ################## # Путь до редиректора #redirect_program /usr/bin/squidGuard -c /etc/squid/squidGuard.conf # Кол-во одновременных запусков редиректов #redirect_children 5 ########### OPTIONS FOR TUNING THE CACHE ############## # Оставляем как есть refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern (cgi-bin|\?) 0 0% 0 refresh_pattern . 0 20% 4320 ############ ERROR PAGE OPTIONS ############### # Отсюда берем файлы стандартных сообщений об ошибках error_directory /usr/share/squid3/errors/Russian-koi8-r # Если Squid уже скачал 60% файла, а пользователь отказался его забирать, то всеравно продолжить скачивание quick_abort_pct 60 # Время жизни запросов завершившихся ошибкой "connection refused" "404 Not Found" negative_ttl 1 minutes # Включить отправку сообщений об ошибках #email_err_data on # кому писать #<А hrеf="mаilto:%w%W" mcе_hrеf="mаilto:%w%W">%w ################# DNS OPTIONS ################### #dns_testnames server.ex # Путь к файлу hosts hosts_file /etc/hosts # Время жизни успешного DNS запроса. positive_dns_ttl 6 hours # Время жизни DNS запроса с ошибкой negative_dns_ttl 5 minutes ############## MISCELLANEOUS ###################### # Место откуда берутся страницы с ошибками, сюда же ложим и свои coredump_dir /var/spool/squid3 # Поддержка нестандартных Http запросов half_closed_clients on # Включать ли IP адрес клиента в заголовок Http запроса forwarded_for on # Вкл. сбор статистики по каждому клиенту client_db on squidguard.conf # # CONFIG FILE FOR SQUIDGUARD # # Caution: do NOT use comments inside { } # dbhome /var/lib/squidguard/db logdir /var/log/squidguard # # TIME RULES: # abbrev for weekdays: # s = sun, m = mon, t =tue, w = wed, h = thu, f = fri, a = sat time workhours { weekly mtwhf 08:00 - 20:00 date *-*-01 08:00 - 20:30 } # # SOURCE ADDRESSES: # src admin { ip 1.2.3.4 1.2.3.5 user root foo bar within workhours } src foo-clients { ip 172.16.2.32-172.16.2.100 172.16.2.100 172.16.2.200 } src bar-clients { ip 172.16.4.0/26 } # # DESTINATION CLASSES: # dest good { } dest local { } dest porn { } #dest adult { # domainlist BL/adult/domains # urllist BL/adult/urls # expressionlist BL/adult/expressions # redirect http://admin.foo.bar.de/cgi-bin/blocked.cgi?clientaddr=%a&clientname=%n&clientuser=%i&clientgroup=%s&targetgroup=%t&url=%u #} # # ACL RULES: # acl { admin { pass any } foo-clients within workhours { pass good !in-addr !porn any } else { pass any } bar-clients { pass local none } default { pass local none redirect http://admin.foo.bar.de/cgi-bin/blocked.cgi?clientaddr=%a&clientname=%n&clientuser=%i&clientgroup=%s&targetgroup=%t&url=%u } } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 15:56 |
|
||
|
|

start [/forum/topic.php?fid=25&tid=1482640]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
173ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
32ms |
get tp. blocked users: |
2ms |
| others: | 257ms |
| total: | 512ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...