Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Проблема с iptables  (Прочитано 1685 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн vetedie

  • Автор темы
  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Проблема с iptables
« : 26 Января 2012, 17:05:44 »
Я понимаю, что наверное подобный вопрос уже набил оскомину у людей знающих, но у меня есть проблема с iptables.
Сам с сервером на Ubuntu работаю первый раз.
Ситуация в чем - поднял шлюз на Ubuntu Server 10.04. Поднял Squid + ClavAM + HAVP
Squid прозрачный на 3128
Есть две проблемы - первая - достаточно сильно тормозит доступ к страницам инета (но это, как я понял проблема слабой машинки).
Вторая - интернет есть, юзера в него ходят. Асечка работает через проксик.

Не ходит почта (почтовик внешний на хосте провайдера - клиенты The Bat и Outlook) в обе стороны. Как я понимаю на файерволе нужно открыть порт 143, 110 и 25 (как я понял - это вопрос не Squid - он http, а iptables).
Также не могу никуда попасть по RDP на внешние адреса (наверное нужно 3389 на выход открыть?). Ну и вот возникает вопрос - а как грамотно то сделать?

В before.rules у меня прописано -
#
# rules.before
#
# Rules that should be run before the ufw command line added rules. Custom
# rules should be added to one of these chains:
#   ufw-before-input
#   ufw-before-output
#   ufw-before-forward
#

#NAT Table
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
#Cleaning
-F PREROUTING
-F POSTROUTING
#enable translation in network 192.168.12.0 by internet interface
-A POSTROUTING -s 192.168.1.0/24 -o eth1 -j MASQUERADE
-A POSTROUTING -p tcp -m tcp -m multiport -s 192.168.12.0/255.255.255.0 -o eth1 -j MASQUERADE --dport 5190,5222,2041,2042,5223,143,110,25,26
#redirect all http in the proxy-port
-A PREROUTING -s 192.168.12.0/24 -p tcp--dport 80 -j REDIRECT --to-port 3128
#don`t delete the 'COMMIT' line or there nat table rules won`t be
#processed
COMMIT


# Don't delete these required lines, otherwise there will be errors
*filter
:ufw-before-input - [0:0]
:ufw-before-output - [0:0]
:ufw-before-forward - [0:0]
:ufw-not-local - [0:0]
# End required lines


# allow all on loopback
-A ufw-before-input -i lo -j ACCEPT
-A ufw-before-output -o lo -j ACCEPT

# quickly process packets for which we already have a connection
-A ufw-before-input -m state --state RELATED,ESTABLISHED -j ACCEPT
-A ufw-before-output -m state --state RELATED,ESTABLISHED -j ACCEPT

# drop INVALID packets (logs these in loglevel medium and higher)
-A ufw-before-input -m state --state INVALID -j ufw-logging-deny
-A ufw-before-input -m state --state INVALID -j DROP

# ok icmp codes
-A ufw-before-input -p icmp --icmp-type destination-unreachable -j ACCEPT
-A ufw-before-input -p icmp --icmp-type source-quench -j ACCEPT
-A ufw-before-input -p icmp --icmp-type time-exceeded -j ACCEPT
-A ufw-before-input -p icmp --icmp-type parameter-problem -j ACCEPT
-A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT

# allow dhcp client to work
-A ufw-before-input -p udp --sport 67 --dport 68 -j ACCEPT

#
# ufw-not-local
#
-A ufw-before-input -j ufw-not-local

# if LOCAL, RETURN
-A ufw-not-local -m addrtype --dst-type LOCAL -j RETURN
# if MULTICAST, RETURN
-A ufw-not-local -m addrtype --dst-type MULTICAST -j RETURN

# if BROADCAST, RETURN
-A ufw-not-local -m addrtype --dst-type BROADCAST -j RETURN

# all other non-local packets are dropped
-A ufw-not-local -m limit --limit 3/min --limit-burst 10 -j ufw-logging-deny
-A ufw-not-local -j DROP

# allow MULTICAST, be sure the MULTICAST line above is uncommented
-A ufw-before-input -s 224.0.0.0/4 -j ACCEPT
-A ufw-before-input -d 224.0.0.0/4 -j ACCEPT


# don't delete the 'COMMIT' line or these rules won't be processed
COMMIT

что я делаю не так?


Оффлайн mc-sim

  • Новичок
  • *
  • Сообщений: 17
  • Любитель экспериментов
    • Просмотр профиля
    • Блог любителя экспериментов
Re: Проблема с iptables
« Ответ #1 : 30 Января 2012, 00:34:13 »
Опиши свои локальные подсети и внешние и назначение интерфесов?
а то в правилах -s 192.168.1.0/24 и -s 192.168.12.0/24 фигурирует. Путаница.
Но включив режим телепатии :) я могу предположить, что для работы почты и RDP нужно добавить в правило
-A POSTROUTING -p tcp -m tcp -m multiport -s 192.168.12.0/255.255.255.0 -o eth1 -j MASQUERADE --dport 5190,5222,2041,2042,5223,143,110,25,26
порт 3389/tcp и почтовые порты. Видимо у вас локальные клиенты работают через TLS, который требует для себя 995/tcp и 465/tcp.

Пользователь решил продолжить мысль 30 Января 2012, 00:36:09:
а, ну еще 443/tcp порт, чтобы не было
Цитировать
достаточно сильно тормозит доступ к страницам инета
:)
Ибо боюсь, что тормозит, потому что все долбятся в новомодный https :)
« Последнее редактирование: 30 Января 2012, 00:36:33 от mc-sim »
Приходите ко мне в блог для изучения основ Linux, а так же основ настройки сетевых сервисов.

Оффлайн vetedie

  • Автор темы
  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Проблема с iptables
« Ответ #2 : 30 Января 2012, 18:58:05 »
У меня есть одна сеть 192.168.12.0/24.

Ой, кажется что я в -A POSTROUTING -s 192.168.1.0/24 -o eth1 -j MASQUERADE опечатался.
И там должно быть -A POSTROUTING -s 192.168.12.0/24 -o eth1 -j MASQUERADE

Завтра утром попробую.

 

Страница сгенерирована за 0.028 секунд. Запросов: 25.