Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по Linux » Проблема с NAT в Линуксе Fedora Core 7

Ответить
Настройки темы
Проблема с NAT в Линуксе Fedora Core 7

Аватара для voler

Ветеран


Сообщения: 907
Благодарности: 36

Профиль | Отправить PM | Цитировать


Изменения
Автор: voler
Дата: 31-07-2007
Нужен совет где косяк зарылся.

Добавил строку в iptables -A POSTROUTING -s 192.168.1.0/255.255.255.0 -o eth0 -j SNAT --to-source 80.237.27.**

Получил следующий конфигурационный файл.

PHP код: Выделить весь код

# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*nat
:PREROUTING ACCEPT [15:1440]
:
POSTROUTING ACCEPT [0:0]
:
OUTPUT ACCEPT [0:0]
-
A POSTROUTING -s 192.168.1.0/255.255.255.0 -o eth0 -j SNAT --to-source 80.237.27.42
COMMIT
*filter
:INPUT ACCEPT [0:0]
:
FORWARD ACCEPT [0:0]
:
OUTPUT ACCEPT [0:0]
:
RH-Firewall-1-INPUT - [0:0]
-
A INPUT -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 23 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT 

Еще в файле sysctl.conf в строке net.ipv4.ip_forward = 0 поменял на 1.

PHP код: Выделить весь код

# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled.  See sysctl(8) and
# sysctl.conf(5) for more details.

# Controls IP packet forwarding
net.ipv4.ip_forward 1

# Controls source route verification
net.ipv4.conf.default.rp_filter 1

# Do not accept source routing
net.ipv4.conf.default.accept_source_route 0

# Controls the System Request debugging functionality of the kernel
kernel.sysrq 0

# Controls whether core dumps will append the PID to the core filename.
# Useful for debugging multi-threaded applications.
kernel.core_uses_pid 1

# Controls the use of TCP syncookies
net.ipv4.tcp_syncookies 

Но пинги дальше внутреннего адреса сервера 192.168.1.200 не уходят

Пингую адрес сетевой карты которая смотрит наружу 80.237.27.** пинги идут, а вот пинги на шлюз уже не идут 80.237.27.41

Подскажите плиз?

Отправлено: 14:35, 30-07-2007

 

Аватара для BuGfiX

Слакофил


Сообщения: 590
Благодарности: 130

Профиль | Сайт | Отправить PM | Цитировать


насколько я понимаю - дело в этом:
Цитата:
-A FORWARD -j REJECT --reject-with icmp-host-prohibited

-------
If you don`t know what to use this for, you don`t need it.

http://sergey.sereda.googlepages.com...e1_userbar.gif


Отправлено: 15:27, 30-07-2007 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для voler

Ветеран


Сообщения: 907
Благодарности: 36

Профиль | Отправить PM | Цитировать


Я сделал проще, убил стандартные настройки правил.

И получилось вот, что:

PHP код: Выделить весь код

# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*nat
:PREROUTING ACCEPT [15:1440]
:
POSTROUTING ACCEPT [0:0]
:
OUTPUT ACCEPT [0:0]
-
A POSTROUTING -s 192.168.1.0/255.255.255.0 -o eth0 -j SNAT --to-source 80.237.27.**
COMMIT 

И продвинулся, но не далеко.

Т.е. я теперь из подсети 192.168.1.0/255.255.255.0 пингую шлюз, но вот mail.ru не как.

Может тут нужно, что то добавить?

-------
Linux, это плацдарм для изучения своих возможностей.


Последний раз редактировалось voler, 31-07-2007 в 13:52.


Отправлено: 16:19, 30-07-2007 | #3


Аватара для BuGfiX

Слакофил


Сообщения: 590
Благодарности: 130

Профиль | Сайт | Отправить PM | Цитировать


Шлюз 80.237.27.41 Ваш или провайдерский?
Посмотреть в каком месте затык можно командой
Код: Выделить весь код
$ traceroute -n mail.ru
или из windows
Код: Выделить весь код
c:\> tracert -d mail.ru

-------
If you don`t know what to use this for, you don`t need it.

http://sergey.sereda.googlepages.com...e1_userbar.gif


Отправлено: 17:52, 30-07-2007 | #4


Аватара для Strange_V

Старожил


Сообщения: 222
Благодарности: 29

Профиль | Отправить PM | Цитировать


voler
а DNS настроен? когда пингуеш IP по имени хоста определяет?
типа:
Цитата:
PING mail.ru (194.67.57.26) 56(84) bytes of data.

-------
Жизнь-это шахматная партия, по окончании которой и короли, и пешки ложатся в один ящик.


Отправлено: 01:03, 31-07-2007 | #5


Аватара для voler

Ветеран


Сообщения: 907
Благодарности: 36

Профиль | Отправить PM | Цитировать


Вообщем проверил.

Настройки клиента такие.

ip 192.168.1.xxx
mask 255.255.255.0
gateway 192.168.1.200 (мой сервер линукс)

dns1 217.150.34.129
dns2 217.150.35.129

выполнил от клиента команду

tracert -d mail.ru

получил результат

Трассировка маршрута к mail.ru [194.67.57.26]
с максимальным числом прыжков 30:
1 <1 мс <1 мс <1 мс 192.168.1.200
2 <1 мс <1 мс <1 мс 80.237.27.41
3 1 ms 1 ms 1 ms 80.237.24.33
4 4 ms 3 ms 4 ms 217.150.56.174
5 5 ms 5 ms 5 ms 194.186.0.141
6 27 ms 48 ms 50 ms 195.239.10.189
7 8 ms 6 ms 6 ms 195.239.13.109
8 6 ms 6 ms 7 ms 194.67.57.26
Трассировка завершена.

От сюда сделал вывод, что dns у клиента был задан не верно.

Кто нибудь выложите свои конфигурационные файлы iptables

И ресурс гду можно более подробно почитать об этом.

-------
Linux, это плацдарм для изучения своих возможностей.


Отправлено: 11:29, 31-07-2007 | #6


Аватара для BuGfiX

Слакофил


Сообщения: 590
Благодарности: 130

Профиль | Сайт | Отправить PM | Цитировать


Цитата:
выполнил от клиента команду tracert -d mail.ru получил результат Трассировка маршрута к mail.ru [194.67.57.26]
судя по тому что Вы написали - DNS как раз работает..

Свои фаерволы Вам тут никто не выложит, если есть конкретные вопросы - задавайте. А по поводу информации - вот

-------
If you don`t know what to use this for, you don`t need it.

http://sergey.sereda.googlepages.com...e1_userbar.gif


Отправлено: 12:04, 31-07-2007 | #7


Аватара для voler

Ветеран


Сообщения: 907
Благодарности: 36

Профиль | Отправить PM | Цитировать


Вопросы есть, и много.

Как видно из этих двух строк, править файл настроек вручную не рекомендовано.
PHP код: Выделить весь код

# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended. 

Мой файл настроек, сейчас выглядит так.
PHP код: Выделить весь код

*nat
:PREROUTING ACCEPT [15:1440]
:
POSTROUTING ACCEPT [0:0]
:
OUTPUT ACCEPT [0:0]
-
A POSTROUTING -s 192.168.1.0/255.255.255.0 -o eth0 -j SNAT --to-source 80.237.27.**
COMMIT 

Хотелось бы задать ограничения пользователям, открыть только данные порты 80, 5190, 80, 25, 110.

-------
Linux, это плацдарм для изучения своих возможностей.


Отправлено: 13:51, 31-07-2007 | #8


Аватара для BuGfiX

Слакофил


Сообщения: 590
Благодарности: 130

Профиль | Сайт | Отправить PM | Цитировать


Цитата:
Вопросы есть, и много.
Где?

По ссылке которую я дал выше есть подробное описание, и даже на русском всех аспектов настройки iptables.
HINT: Чтобы "открыть только данные порты 80, 5190, 80, 25, 110" - добавлять правила в таблицу filter, цепочку FORWARD.

-------
If you don`t know what to use this for, you don`t need it.

http://sergey.sereda.googlepages.com...e1_userbar.gif


Отправлено: 14:08, 31-07-2007 | #9


Аватара для Strange_V

Старожил


Сообщения: 222
Благодарности: 29

Профиль | Отправить PM | Цитировать


По поводу настройки iptables BuGfiX дал вам хороший ман, так же можно погуглить.
Еще в сети можно найти множество готовых скриптов..

Сам пока не имел возможности глубоко разобраться, работает так (кусок файла настройки):
Цитата:
# Переменная, задающая путь к файлу запуска iptables.
IPT=/sbin/iptables

# Интерфейс локальной сети.
LAN_IFACE="eth0"
LAN_IFACE2="eth1"

# Интерфейс в инет
INET_IFACE="ppp0"

# Удаление правил
$IPT -F
$IPT -t nat -F
$IPT -t mangle -F

# Очищаем нестандартные правила
$IPT -X
$IPT -t nat -X
$IPT -t mangle -X

# Политики по умолчанию.
$IPT -P INPUT DROP
$IPT -P FORWARD DROP
$IPT -P OUTPUT ACCEPT

... ... ...

# Маскарад
$IPT -t nat -A POSTROUTING -p tcp -s 192.168.0.1/24 -m multiport --dport 25,110,5190 -o $INET_IFACE -j MASQUERADE
Сделано на основе готового скрипта.

-------
Жизнь-это шахматная партия, по окончании которой и короли, и пешки ложатся в один ящик.


Отправлено: 14:56, 31-07-2007 | #10



Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по Linux » Проблема с NAT в Линуксе Fedora Core 7

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Redhat/Fedora - проблема с удаленным доступом по ssh из приложения в fedora core 8 YanaD Общий по Linux 3 24-10-2008 09:35
Проблема с микрофоном в Fedora Core 6_64 gresik Железо в Linux 2 29-01-2007 15:36
Звук в Fedora Core 3 dmitryst Железо в Linux 8 11-04-2005 14:14
Fedora Core 3 GoRiLLa Новости и флейм из мира *nix 9 15-12-2004 17:43
Fedora Core 2 orion2 Общий по Linux 16 26-06-2004 19:13




 
Переход