saton 0 Опубликовано: 2007-03-17 21:57:39 Share Опубликовано: 2007-03-17 21:57:39 Есть сетка на 30 машин, всем надо открыть доступ на внутренний вэб сайт независимо от наличия денег на счету и определенному количеству народа выход в инет при наличии денег. Решил осуществить это следующим способом: для безденежного народа доступ через 80 порт, а для выхода в инет использовать прозрачний прокси на порт 3128. Только вот доступа через прксю добиться немогу. В файрволе установил следующее правила: iptables -t filter -F iptables -t filter -X iptables -t nat -F iptables -t nat -X iptables -t filter -P INPUT DROP iptables -t filter -P FORWARD DROP iptables -t filter -P OUTPUT DROP # DNS iptables -t filter -A INPUT -p tcp --sport 53 -j ACCEPT iptables -t filter -A FORWARD -p tcp --sport 53 -j ACCEPT iptables -t filter -A FORWARD -p tcp --dport 53 -j ACCEPT iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT iptables -t filter -A INPUT -p udp --sport 53 -j ACCEPT iptables -t filter -A FORWARD -p udp --sport 53 -j ACCEPT iptables -t filter -A FORWARD -p udp --dport 53 -j ACCEPT iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT # WWW на локалку #iptables -t filter -A INPUT -d $server -s $local/24 -p tcp --dport 80 -j ACCEPT #iptables -t filter -A OUTPUT -s $server -d $local/24 -p tcp --sport 80 -j ACCEPT # SSH iptables -t filter -A INPUT -p tcp -s $admin -d $server --dport 22 -j ACCEPT iptables -t filter -A OUTPUT -p tcp -d $admin -s $server --sport 22 -j ACCEPT iptables -t filter -A INPUT -p udp -s $admin -d $server --dport 22 -j ACCEPT iptables -t filter -A OUTPUT -p udp -d $admin -s $server --sport 22 -j ACCEPT # Stargazer configurator iptables -t filter -A INPUT -p tcp -s 192.168.0.0/24 -d $server --dport 5555 -j ACCEPT iptables -t filter -A OUTPUT -p tcp -d 192.168.0.0/24 -s $server --sport 5555 -j ACCEPT # Stargazer InetAccess iptables -t filter -A INPUT -p udp -s 192.168.0.0/24 --sport 5555 -d $server --dport 5555 -j ACCEPT iptables -t filter -A OUTPUT -p udp -d 192.168.0.0/24 --dport 5555 -s $server -j ACCEPT # Маскарадинг iptables -t nat -A POSTROUTING -d 0.0.0.0/0 -j MASQUERADE # Разрешаем все на локальном интерфейсе iptables -t filter -A INPUT -d 127.0.0.1 -j ACCEPT iptables -t filter -A OUTPUT -s 127.0.0.1 -j ACCEPT # samba на локалку iptables -A INPUT -i eth1 -p tcp -m multiport --port 137,138,139 -j ACCEPT iptables -A INPUT -i eth1 -p udp -m multiport --port 137,138,139 -j ACCEPT iptables -A OUTPUT -o eth1 -p tcp -m multiport --port 137,138,139 -j ACCEPT iptables -A OUTPUT -o eth1 -p udp -m multiport --port 137,138,139 -j ACCEPT ----------------------------------------- Скрипты Stargazera: <OnConnect> #!/bin/bash # Login LOGIN=$1 #user IP IP=$2 #cash CASH=$3 #user ID ID=$4 iptables -t nat -A PREROUTING -s $IP -p tcp -m multiport --dport 80 -j REDIRECT --to-port 3128 iptables -t filter -A INPUT -s $IP -j ACCEPT iptables -t filter -A FORWARD -s $IP -j ACCEPT iptables -t filter -A FORWARD -d $IP -j ACCEPT iptables -t filter -A OUTPUT -d $IP -j ACCEPT echo "C `date +%Y.%m.%d-%H.%M.%S` $IP $CASH" >> /var/stargazer/users/$LOGIN/connect.log --------------------------------------- <OnDisconnect> #!/bin/bash # Login LOGIN=$1 #user IP IP=$2 #cash CASH=$3 #user ID ID=$4 iptables -t nat -D PREROUTING -s $IP -p tcp -m multiport --dport 80 -j REDIRECT --to-port 3128 iptables -t filter -D INPUT -s $IP -j ACCEPT iptables -t filter -D FORWARD -s $IP -j ACCEPT iptables -t filter -D FORWARD -d $IP -j ACCEPT iptables -t filter -D OUTPUT -d $IP -j ACCEPT echo "D `date +%Y.%m.%d-%H.%M.%S` $IP $CASH" >> /var/stargazer/users/$LOGIN/connect.log ----------------------------------- При этих настройках не могу ходить по WEB, при этом доступ в инет открыт. Squid в логах фиксирует запросы к страницам, но не качает их. Если убрать iptables -t nat..., то все работает нормально, но соответственно без прокси. Калупаюсь уже неделю и все безтолку. Может кто подскажет в чем грабли. Ссылка на сообщение Поделиться на других сайтах
AlexeyD 0 Опубліковано: 2007-03-20 08:49:47 Share Опубліковано: 2007-03-20 08:49:47 При этих настройках не могу ходить по WEB, при этом доступ в инет открыт. Squid в логах фиксирует запросы к страницам, но не качает их. Если убрать iptables -t nat..., то все работает нормально, но соответственно без прокси. Калупаюсь уже неделю и все безтолку. Может кто подскажет в чем грабли. а ты уверен что в самой сквиде вмсе нормально настроено, что фаервол лочит инет а не сквида? попробуй трейс, пинг, может проблема в конфигах сквиды? Ссылка на сообщение Поделиться на других сайтах
saton 0 Опубліковано: 2007-03-21 13:47:06 Автор Share Опубліковано: 2007-03-21 13:47:06 Squid один нормально работает, если через файрвол ничего не ограничевать. А в каком месте пакеты застревабт немогу понять. Ссылка на сообщение Поделиться на других сайтах
AlexeyD 0 Опубліковано: 2007-03-23 14:31:40 Share Опубліковано: 2007-03-23 14:31:40 Squid один нормально работает, если через файрвол ничего не ограничевать. А в каком месте пакеты застревабт немогу понять. выложи настройки сквида Ссылка на сообщение Поделиться на других сайтах
saton 0 Опубліковано: 2007-03-24 10:55:50 Автор Share Опубліковано: 2007-03-24 10:55:50 # WELCOME TO SQUID 2 # ------------------ # http_port 3128 ssl_unclean_shutdown on icp_port 0 acl QUERY urlpath_regex cgi-bin \? no_cache deny QUERY cache_mem 70 MB cache_replacement_policy heap GDSF memory_replacement_policy heap GDSF cache_dir diskd /var/spool/squid/ 1250 16 256 cache_store_log none log_fqdn on emulate_httpd_log on auth_param basic program /usr/lib/squid/pam_auth auth_param basic children 5 auth_param basic realm Squid Proxy-Caching Web Serwer auth_param basic credentialsttl 2 hours acl usera proxy_auth REQUIRED acl localnet src 192.168.0.0/255.255.255.0 acl localhost src 127.0.0.1/255.255.255.255 acl SSL_ports port 443 563 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 563 # https, snews 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 acl PURGE method PURGE acl all src 0.0.0.0/0.0.0.0 http_access allow localnet http_access allow localhost http_access allow PURGE localhost http_access deny !Safe_ports http_access deny CONNECT !SSL_ports http_access deny CONNECT http_access deny PURGE http_access deny all httpd_accel_host virtual httpd_accel_port 80 httpd_accel_with_proxy on httpd_accel_uses_host_header on cache_mgr veches@pash.net cache_effective_user squid cache_effective_group squid logfile_rotate 0 log_icp_queries off buffered_logs on Если в файрволе никакие правила не ставить, то все работает нормально. Но стоит установить правила которые указаны в самом первом сообщении, то через сквид доступ исчезает. Може надо что-то для сквида отдельно прописывать????? Ссылка на сообщение Поделиться на других сайтах
saton 0 Опубліковано: 2007-03-24 15:27:36 Автор Share Опубліковано: 2007-03-24 15:27:36 Нашел в чем глюк. надо добавить в OnConnedt: iptables -A INPUT -p tcp -j ACCEPT iptables -A OUTPUT -p tcp -j ACCEPT Ссылка на сообщение Поделиться на других сайтах
egor2fsys 5 Опубліковано: 2007-03-24 20:13:55 Share Опубліковано: 2007-03-24 20:13:55 Нашел в чем глюк.надо добавить в OnConnedt: iptables -A INPUT -p tcp -j ACCEPT iptables -A OUTPUT -p tcp -j ACCEPT Дык у вас уже были эти строки: iptables -t filter -A INPUT -s $IP -j ACCEPT <...skip...> iptables -t filter -A OUTPUT -d $IP -j ACCEPT Без указания целевой таблички по умолчанию - filter. Так что одинаково. Ссылка на сообщение Поделиться на других сайтах
saton 0 Опубліковано: 2007-03-30 19:56:30 Автор Share Опубліковано: 2007-03-30 19:56:30 Пока я не установил протокол tcp связи небыло. А после установки все заработало. Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас