The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Проблмма с firewall'ом (iptables)"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [ Отслеживать ]

"Проблмма с firewall'ом (iptables)"  
Сообщение от Дмитрий (??) on 25-Фев-09, 11:20 
С Linux я на ВЫ. Перекопал кучу статей про iptables, но остались бреши в знаниях. Пытаюсь выпустить хрюшу в сеть через роутер (Dibian etch) с маскарадом на интерфейсе локальной сети.
Вот сам скрипт

#!/bin/sh
PATH=/usr/sbin:/sbin:/bin:/usr/bin

# SATDV -> Локальная сеть
# INTERNAL -> Интерфейс со стороны хрюши
# SATDV_IP -> IP-адрес интерфейса локальной сети
# INTERNAL_IP -> IP-адрес интерфейса со стороны хрюши
    INTERNAL=eth0
    SATDV=eth1

    SATDV_IP=192.168.81.48
    INTERNAL_IP=10.10.0.1
# Включаем forward
    echo 1 > /proc/sys/net/ipv4/ip_forward

    echo "Setting up NAT (Network Address Translation)..."

#
# Очищаем все таблицы
#
    iptables -F
    iptables -t nat -F
    iptables -t mangle -F
    iptables -X

# Разрешаем входящие соединения со всех интерфейсов
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A INPUT -i $INTERNAL -j ACCEPT
    iptables -A INPUT -i $SATDV -j ACCEPT
# Дропаем по умолчанию Forward.
    iptables -P FORWARD DROP
# Разрешаем форард только установленным соединениям
    iptables -A FORWARD -i $SATDV -o $INTERNAL -m state --state ESTABLISHED,RELATED -j ACCEPT

# Включаем маскарад
    iptables -t nat -A POSTROUTING -o $SATDV -j MASQUERADE

Больше ничего нигде не писал. Укажите в чём ошибка или может что то надо дописать. Проблемма в том что не могу попасть в локальную сеть.

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Проблмма с firewall'ом (iptables)"  
Сообщение от daevy on 25-Фев-09, 11:30 

># Включаем маскарад
>    iptables -t nat -A POSTROUTING -o $SATDV -j

прежде чем чтото маскарадить или натить, нужно сделать такой же форвард, например, если натим http то надо 2 правила
iptables -A FORWARD -s $LAN -p tcp --dport 80 -j ACCEPT
iptables -t nat -A POSTROUTING -o $SATDV -p tcp --dport 80 -j MASQUERADE
т.е. смысл в чем, перед тем как на выходе в сетку менять заголовки в пакете (это и есть SNAT и MASQ) необходимо эти пакеты пропустить через себя


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Проблмма с firewall'ом (iptables)"  
Сообщение от Дмитрий (??) on 25-Фев-09, 11:57 
>iptables -A FORWARD -s $LAN -p tcp --dport 80 -j ACCEPT
>iptables -t nat -A POSTROUTING -o $SATDV -p tcp --dport 80 -j
>MASQUERADE
>т.е. смысл в чем, перед тем как на выходе в сетку менять
>заголовки в пакете (это и есть SNAT и MASQ) необходимо эти
>пакеты пропустить через себя

А если мне весь трафик нужно пропустить, то будет примерно такого вида iptables -A FORWARD -s $LAN  -j ACCEPT

Я вот не могу понять ещё разницы между НАТом и маскарадом.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Проблмма с firewall'ом (iptables)"  
Сообщение от Andrey Mitrofanov on 25-Фев-09, 14:40 
>Я вот не могу понять ещё разницы между НАТом и маскарадом.

Если того, что написано по этому поводу в man iptables, http:/docs/RUS/iptables/ и прочих http://google.ru/search?q=masq+snat+site:opennet.ru/openforu... , не достаточно - спрашивайте...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Проблмма с firew"  
Сообщение от Andrey Mitrofanov on 25-Фев-09, 14:59 
># Дропаем по умолчанию Forward.
>    iptables -P FORWARD DROP
># Разрешаем форард только установленным соединениям
>    iptables -A FORWARD -i $SATDV -o $INTERNAL -m
>state --state ESTABLISHED,RELATED -j ACCEPT

Поскольку пакеты со state-ом NEW нигде не акцептятся, то никаких ESTABLISHED,RELATED не образуется никода. Я ничего не пропустил?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Проблмма с firew"  
Сообщение от LS (ok) on 25-Фев-09, 15:15 
> Укажите в чём ошибка или может что
>то надо дописать. Проблемма в том что не могу попасть в
>локальную сеть.

ошибка в том . что показываешь скрипт. а должен показать состояние таблиц пакетного фильтра.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Проблмма с firew"  
Сообщение от Дмитрий (??) on 26-Фев-09, 07:46 
>> Укажите в чём ошибка или может что
>>то надо дописать. Проблемма в том что не могу попасть в
>>локальную сеть.
>
>ошибка в том . что показываешь скрипт. а должен показать состояние таблиц
>пакетного фильтра.

А какая команда? Я порыскаал в инете, но ничего толкового не нашёл.

Я уже цепочки INPUT и FORWARD по умолчанию сделал ACCEPT, всё разрешил, но всё равно пакеты не идут транзитом.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "Проблмма с firew"  
Сообщение от Oyyo on 26-Фев-09, 09:36 
>А какая команда? Я порыскаал в инете, но ничего толкового не нашёл.

зачем так далеко ходить?
man iptables
и читаем, сложнлсти с английским, идём
http://www.opennet.ru/docs/RUS/iptables/index.html
>
>
>Я уже цепочки INPUT и FORWARD по умолчанию сделал ACCEPT, всё разрешил,
>но всё равно пакеты не идут транзитом.

в студию выводы команд
route -n
iptables -L -vn
iptables -t nat -L -vn
cat /proc/sys/net/ipv4/ip_forward

ну и для общей ясности с хрюши вывод команды
ipconfig -all

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "Проблмма с firew"  
Сообщение от Дмитрий (??) on 26-Фев-09, 16:11 
debian:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.81.0    0.0.0.0         255.255.255.0   U     0      0        0 eth1_rename
10.10.0.0       0.0.0.0         255.255.255.0   U     0      0        0 eth0
0.0.0.0         192.168.81.249  0.0.0.0         UG    0      0        0 eth1_rename


debian:~# iptables -L -vn
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source               destination

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source               destination


debian:~# iptables -t nat -L -vn
Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source               destination

Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source               destination

После того как ввёл cat /proc/sys/net/ipv4/ip_forward меня насторожил результат

debian:~# cat /proc/sys/net/ipv4/ip_forward
0


Вроде всё правильно делал: положил скрипт в папочку /etc/init.d , выполнил команду update-rc.d НАЗВАНИЕ_СКРИПТА defaults 90.

После того как подправил скрипт, опять выполнил команду update-rc.d НАЗВАНИЕ_СКРИПТА defaults 99. После этого опять стоит НОЛЬ.

Вот скрипт после переделки


#!/bin/sh

# SATDV -> сат-дв
# INTERNAL -> локалка
# SATDV_IP -> сат-дв IP
# INTERNAL_IP -> локалка IP
    INTERNAL=eth0
    SATDV=eth1_rename

    SATDV_IP=192.168.81.48
    INTERNAL_IP=10.10.0.1
# Включаем forward
    echo 1 > /proc/sys/net/ipv4/ip_forward

    echo "Setting up NAT (Network Address Translation)..."

#
# Удалить все действующие правила
#
    iptables -F
    iptables -t nat -F
    iptables -t mangle -F
    iptables -X


# Всегда принимать трафик на loopback-интерфейсе, ЛВС, ADSL
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A INPUT -i $INTERNAL -j ACCEPT
    iptables -A INPUT -i $SATDV -j ACCEPT
# По умолчанию весь транзит пакетов разрешаем.
    iptables -P FORWARD ACCEPT
# Разрешаем все исходящие соединения и оставляем только запрошенные
    iptables -A FORWARD -i $INTERNAL -o $SATDV ACCEPT

# Сат-ДВ -> ЛВС
    iptables -A FORWARD -i $SATDV -o $INTERNAL -m state --state ESTABLISHED,RELATED -j ACCEPT


# Включаем MASQUERADING на интерфейсе Сат-ДВ
    iptables -t nat -A POSTROUTING -o $SATDV -j MASQUERADE

Что теперь мне делать? Почему не включается форвард?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

14. "Проблмма с firew"  
Сообщение от Gennadi email(??) on 27-Фев-09, 10:04 

>Что теперь мне делать? Почему не включается форвард?

======================================================================================
#!/bin/bash
#
# Внешний интерфейс ppp0 или eth1
EXTIF="eth1 "

# Локальный интерфейс
INTIF="eth0"

# IP-Adresse локальнго интерфейса определить
LAN_IP=$(ifconfig $INTIF | head -n 2 | tail -n 1 | cut -d: -f2 | cut -d" " -f 1)

#
case "$1" in
start)
echo "Starte IP-Paketfilter"

# iptables-Modul
modprobe ip_tables
modprobe ip_conntrack
modprobe ip_conntrack_irc
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
# modprobe ip_nat_irc

# Tabelle очистить
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
iptables -t nat -X
iptables -t mangle -X

# Default-Policies установить
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

# MY_REJECT-Chain
iptables -N MY_REJECT

# MY_REJECT заполнить
iptables -A MY_REJECT -p tcp -m limit --limit 7200/h -j LOG --log-prefix "REJECT TCP "
iptables -A MY_REJECT -p tcp -j REJECT --reject-with tcp-reset
iptables -A MY_REJECT -p udp -m limit --limit 7200/h -j LOG --log-prefix "REJECT UDP "
iptables -A MY_REJECT -p udp -j REJECT --reject-with icmp-port-unreachable
iptables -A MY_REJECT -p icmp -m limit --limit 7200/h -j LOG --log-prefix "DROP ICMP "
iptables -A MY_REJECT -p icmp -j DROP
iptables -A MY_REJECT -m limit --limit 7200/h -j LOG --log-prefix "REJECT OTHER "
iptables -A MY_REJECT -j REJECT --reject-with icmp-proto-unreachable

# MY_DROP-Chain
iptables -N MY_DROP
iptables -A MY_DROP -m limit --limit 7200/h -j LOG --log-prefix "PORTSCAN DROP "
iptables -A MY_DROP -j DROP

# все пакеты протоколировать
iptables -A INPUT -j LOG --log-prefix "INPUT LOG "
iptables -A OUTPUT -j LOG --log-prefix "OUTPUT LOG"
iptables -A FORWARD -j LOG --log-prefix "FORWARD LOG "

# Битые пакеты выбросить
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A OUTPUT -m state --state INVALID -j DROP
iptables -A FORWARD -m state --state INVALID -j DROP

# Stealth Scans etc. запретить
# Flags не установлен
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j MY_DROP
iptables -A FORWARD -p tcp --tcp-flags ALL NONE -j MY_DROP

# SYN и FIN установить
iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j MY_DROP
iptables -A FORWARD -p tcp --tcp-flags SYN,FIN SYN,FIN -j MY_DROP

# SYN и RST одновременно установить
iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j MY_DROP
iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN,RST -j MY_DROP

# FIN и RST одновременно установить
iptables -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j MY_DROP
iptables -A FORWARD -p tcp --tcp-flags FIN,RST FIN,RST -j MY_DROP

# FIN без ACK
iptables -A INPUT -p tcp --tcp-flags ACK,FIN FIN -j MY_DROP
iptables -A FORWARD -p tcp --tcp-flags ACK,FIN FIN -j MY_DROP

# PSH без ACK
iptables -A INPUT -p tcp --tcp-flags ACK,PSH PSH -j MY_DROP
iptables -A FORWARD -p tcp --tcp-flags ACK,PSH PSH -j MY_DROP

# URG без ACK
iptables -A INPUT -p tcp --tcp-flags ACK,URG URG -j MY_DROP
iptables -A FORWARD -p tcp --tcp-flags ACK,URG URG -j MY_DROP

# Loopback-Netzwerk-Kommunikation разрешить
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# Maximum Segment Size (MSS) для Forwarding на PMTU разрешить
iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

# Connection-Tracking активировать
iptables -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i ! $EXTIF -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# Допуск из LAN к локальному интерфейсу разрешить
iptables -A INPUT -m state --state NEW -i $INTIF -j ACCEPT

# Default-Policies mit REJECT
iptables -A INPUT -j MY_REJECT
iptables -A OUTPUT -j MY_REJECT
iptables -A FORWARD -j MY_REJECT

# Routing разрешить
echo 1 > /proc/sys/net/ipv4/ip_forward 2> /dev/null

# Masquerading разрешить
iptables -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE

# SYN-Cookies разрешить
echo 1 > /proc/sys/net/ipv4/tcp_syncookies 2> /dev/null

# Stop Source-Routing
for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/accept_source_route 2> /dev/null; done

# Stop Redirecting
for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/accept_redirects 2> /dev/null; done

# Reverse-Path-Filter
for i in /proc/sys/net/ipv4/conf/*; do echo 2 > $i/rp_filter 2> /dev/null; done

# Log Martians
for i in /proc/sys/net/ipv4/conf/*; do echo 1 > $i/log_martians 2> /dev/null; done

# BOOTP-Relaying отключить
for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/bootp_relay 2> /dev/null; done

# Proxy-ARP выключить
for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/proxy_arp 2> /dev/null; done

# Негодные ICMP-ответы игнорировать
echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses 2> /dev/null

# ICMP Echo-Broadcasts игнорировать
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts 2> /dev/null

# Max. 500/Sekunde (5/Jiffie) посылать
echo 5 > /proc/sys/net/ipv4/icmp_ratelimit

# Оптимизация памяти и времени для IP-дe/-фрагментации
echo 262144 > /proc/sys/net/ipv4/ipfrag_high_thresh
echo 196608 > /proc/sys/net/ipv4/ipfrag_low_thresh
echo 30 > /proc/sys/net/ipv4/ipfrag_time

# TCP-FIN-Timeout защиту от DoS-Attacken установить
echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout

# Maximal 3 ответа на один TCP-SYN
echo 3 > /proc/sys/net/ipv4/tcp_retries1

# TCP-Pakete maximal 15x повторить
echo 15 > /proc/sys/net/ipv4/tcp_retries2

;;

stop)
echo "Stoppe IP-Paketfilter"
# Tabelle очистить
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
iptables -t nat -X
iptables -t mangle -X
echo "Deaktiviere IP-Routing"
echo 0 > /proc/sys/net/ipv4/ip_forward

# Default-Policies установить
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
;;

status)
echo "Tabelle filter"
iptables -L -vn
echo "Tabelle nat"
iptables -t nat -L -vn
echo "Tabelle mangle"
iptables -t mangle -L -vn
;;

*)
echo "Bad run IP-Paketfilter "
echo "Syntax: $0 {start|stop|status}"
exit 1
;;

esac
===================================================================================

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

15. "Проблмма с firew"  
Сообщение от Gennadi email(??) on 27-Фев-09, 10:24 
>
>>Что теперь мне делать? Почему не включается форвард?
>

Назови этот скрипт "firewall" что ли...

firewall start
firewall status
firewall stop

Выполни команду bash -x firewall start и посмотри какие ошибки вылезут или нет!

:-)))

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

21. "Проблмма с firew"  
Сообщение от LS email(ok) on 02-Мрт-09, 03:49 
>
>Вроде всё правильно делал: положил скрипт в папочку /etc/init.d , выполнил команду
>update-rc.d НАЗВАНИЕ_СКРИПТА defaults 90.
>
>После того как подправил скрипт, опять выполнил команду update-rc.d НАЗВАНИЕ_СКРИПТА defaults 99.
>После этого опять стоит НОЛЬ.
>

зачем такие страсти? независимо от того, что у Вас в скрипте пакетного фильтра написано. посмотрите каким номером у Вас сеть стартует (интерфейсы поднимаются итд) и рассудите трезво - если сеть поднимается например на 45, то почему правила ограничивающие доступ у Вас на 99 стартуют?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

28. "Проблмма с firew"  
Сообщение от Дмитрий (??) on 02-Мрт-09, 12:03 
>зачем такие страсти? независимо от того, что у Вас в скрипте пакетного
>фильтра написано. посмотрите каким номером у Вас сеть стартует (интерфейсы поднимаются
>итд) и рассудите трезво - если сеть поднимается например на 45,
>то почему правила ограничивающие доступ у Вас на 99 стартуют?

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

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "Проблмма с firew"  
Сообщение от Andrey Mitrofanov on 26-Фев-09, 15:50 
>Я уже цепочки INPUT и FORWARD по умолчанию сделал ACCEPT, всё разрешил,
>но всё равно пакеты не идут транзитом.

Чтобы "простой" NAT "просто" работал, ещё (могут быть) нужны настройки на клиентах.

Ну, не считая кучи подводных камней и разнообразнейщих мест для ощибок и опечаток -- как помимо, так и внутри "скрипта инициализации iptables".

Сейчас телепаты подтянутся, подождите немного... они "укажут, где у Вас ошибка".

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "Проблмма с firew"  
Сообщение от Дмитрий (??) on 26-Фев-09, 16:29 
С клиентской хрюшей всё ровно. Там всё вроде правильно.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

11. "Проблмма с firew"  
Сообщение от Oyyo on 26-Фев-09, 18:22 
ох идолгож я ждал ответ :)
>Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
> pkts bytes target     prot opt in  
>   out     source    destination

приэтой политике все разрешающие правила теряряют смысл
если только нужен лог...

>Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
> pkts bytes target     prot opt in  
>   out     source    destination

невижу маскарада,
вы с такими правилами что хотите получить

следующую команду попробуйте вручную, не из скрипта
echo 1 > /proc/sys/net/ipv4/ip_forward
по команде кат должны получить "1"
если вручную катит, в скрипте пропишите полные пути команд
например
/sbin/echo 1 > /proc/sys/net/ipv4/ip_forward

пробуйте :)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

12. "Проблмма с firew"  
Сообщение от Дмитрий (??) on 27-Фев-09, 03:31 
>ох идолгож я ждал ответ :)
>>Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
>> pkts bytes target     prot opt in  
>>   out     source    destination
>
>приэтой политике все разрешающие правила теряряют смысл
>если только нужен лог...

А что за конкретно команду я прописал чтобы включилась такая политика? Но всё равно же должно работать?

>>Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
>> pkts bytes target     prot opt in  
>>   out     source    destination
>
>невижу маскарада,
>вы с такими правилами что хотите получить

А маскарад как должен отображаться? Я имею в виду что конкретно должны вывестись на экран?
>следующую команду попробуйте вручную, не из скрипта
>echo 1 > /proc/sys/net/ipv4/ip_forward
>по команде кат должны получить "1"

Всё получилось, в смысле единица.
>если вручную катит, в скрипте пропишите полные пути команд
>например
>/sbin/echo 1 > /proc/sys/net/ipv4/ip_forward

А вот и не растёт какос! Прописал в скрипте полный путь, а результат "ноль", в прямом смысле.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

13. "Пробалемама с"  
Сообщение от Andrey Mitrofanov on 27-Фев-09, 09:40 
>А вот и не растёт какос!

Ну, свечку поставь, курицу снеси шаману сваго остова Невезения...

>Прописал в скрипте полный путь, а результат "ноль", в прямом смысле.

Покажи, что ляжет при запуске твоего скрыпта с выводом в файл:

./tvoy_scrippt 2>&1 >~/file.txt

В ~/file.txt, в смысле, что будет. И не случится ли каких сообщений на экране при таком запуске.

Под root-ом скрипт-то пускаешь или как, что ни одноко правила "не появилось"?

ls -l ./tvoy_scrippt
- покажи, x-биты (права на исполнение) стоять?

Больше пока тупых предположений нет. Ну, книжку "про команды GNU/Linux" какую почитай...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

16. "Пробалемама с"  
Сообщение от Дмитрий (??) on 27-Фев-09, 11:23 
Выполняю команду как было сказанно выше. В ответ Permission denied. Вот тут то я и понял чё к чему. Добавил право на запись на скрипт и всё заработало.
Всем огромное спасибо за помощь! Возможно скоро ещё потребуется ваша помощь.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

17. "Пробалемама с"  
Сообщение от Дмитрий (??) on 01-Мрт-09, 16:24 
Это опять я. Немногим нагрузив машину, я добавил ещё один интерфейс с инетом. Все работает. Теперь моя машинка стала маленьким роутером.
Вопрос. Сейчас моя машина на сколько защищена? Т.е. какова вероятность проникновения из вне (инет, локальная сеть)?
Есть или нет острая необходимость открывать только необходимы порты и закрывать все остальные?
#!/bin/sh

# SATDV -> сат-дв
# DSV -> интернет
# INTERNAL -> локалка
# SATDV_IP -> сат-дв IP
# DSV_IP -> интернет IP
# INTERNAL_IP -> локалка IP

    INTERNAL=eth0
    SATDV=eth1_rename
    DSV=eth1

    SATDV_IP=192.168.81.48
    INTERNAL_IP=10.10.0.1
    DSV_IP=192.160.0.2
# Включаем forward
    echo 1 > /proc/sys/net/ipv4/ip_forward

    echo "Setting up NAT (Network Address Translation)..."

#
# Удалить все действующие правила
#
    iptables -F
    iptables -t nat -F
    iptables -t mangle -F
    iptables -X


# Всегда принимать трафик на loopback-интерфейсе, ЛВС, ADSL
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A INPUT -i $INTERNAL -j ACCEPT
    iptables -A INPUT -i $SATDV -j ACCEPT
    iptables -A INPUT -i $DSV -j ACCEPT
# По умолчанию весь транзит пакетов запрещаем.
    iptables -P FORWARD DROP
    
# Разрешаем все исходящие соединения и оставляем только запрошенные    
    iptables -A FORWARD -i $INTERNAL -o $SATDV -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
    iptables -A FORWARD -i $INTERNAL -o $DSV -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# Сат-ДВ -> ЛВС
    iptables -A FORWARD -i $SATDV -o $INTERNAL -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A FORWARD -i $DSV -o $INTERNAL -m state --state ESTABLISHED,RELATED -j ACCEPT  
#
# Включаем MASQUERADING на интерфейсе Сат-ДВ
    iptables -t nat -A POSTROUTING -o $SATDV -j MASQUERADE
    iptables -t nat -A POSTROUTING -o $DSV -j MASQUERADE

route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.81.249


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

18. "Пробалемама с"  
Сообщение от Oyyo on 01-Мрт-09, 23:30 
>Это опять я. Немногим нагрузив машину, я добавил ещё один интерфейс с
>инетом. Все работает. Теперь моя машинка стала маленьким роутером.
>Вопрос. Сейчас моя машина на сколько защищена? Т.е. какова вероятность проникновения из
>вне (инет, локальная сеть)?
>Есть или нет острая необходимость открывать только необходимы порты и закрывать все
>остальные?
># SATDV -> сат-дв
># DSV -> интернет

сложно врубаюсь в описание, "сат-дв" это, видимо, один канал в инет
DSV - это другой канал в инет
или я ошибаюсь?
>[оверквотинг удален]
>    iptables -A FORWARD -i $DSV -o $INTERNAL -m
>state --state ESTABLISHED,RELATED -j ACCEPT
>#
># Включаем MASQUERADING на интерфейсе Сат-ДВ
>    iptables -t nat -A POSTROUTING -o $SATDV -j
>MASQUERADE
>    iptables -t nat -A POSTROUTING -o $DSV -j
>MASQUERADE
>
>route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.81.249

и как этот роут должен работать?
каким образом собираешся раздавать инет, как определять кого в какой канал?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

19. "Пробалемама с"  
Сообщение от Дмитрий (??) on 02-Мрт-09, 01:21 
Извините, за то что сразу не уточнил. SATDV это локальная сеть состоящая из большова количества компов (порядка 1000). В это сети имеется IRC-сервер и DC++. Вот для этого я сетку и использую. НУ ещё и поиграть в контрец или варик.
DSV это провайдер интернета. Его естественно юзаю для интернета.

Сейчас хочу в локальную сеть ходить - прозрачно. Имеется в виду полный проброс портов. Но чёт пока не нашёл как это сделать.
Дальше. В планах подключить безлимитку(DSV) и 3 челам из локальной сети(SATDV) дать инет. Думаю раздать его по VPN.

Вроде всё. Если не всё указал, то спрашивайте, в постараюсь в кротчайший срок Вам ответить.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

23. "Пробалемама с"  
Сообщение от LS email(ok) on 02-Мрт-09, 03:59 
>[оверквотинг удален]
>и поиграть в контрец или варик.
>DSV это провайдер интернета. Его естественно юзаю для интернета.
>
>Сейчас хочу в локальную сеть ходить - прозрачно. Имеется в виду полный
>проброс портов. Но чёт пока не нашёл как это сделать.
>Дальше. В планах подключить безлимитку(DSV) и 3 челам из локальной сети(SATDV) дать
>инет. Думаю раздать его по VPN.
>
>Вроде всё. Если не всё указал, то спрашивайте, в постараюсь в кротчайший
>срок Вам ответить.

а дайте плз:

- ifconfig с описанием кто у вас внутрь. кто наружу смотрит итд.
- iptables -L -n -v
- iptables -t nat -L -n -v
- route -n

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

24. "Пробалемама с"  
Сообщение от Дмитрий (??) on 02-Мрт-09, 08:05 
#!/bin/sh

# SATDV -> Интерфейс в сторону Локальной сети
# DSV -> Интернет со всеми вытекающими
# INTERNAL -> Интерфейс смотрит в сторону одинокой winxp
# SATDV_IP -> Соответственно мой ИП-адрес в Локальной сети
# DSV_IP -> Соответственно мой ИП-адрес смотрящий в интернет (через DSL модем)
# INTERNAL_IP -> локалка IP

    INTERNAL=eth0
    SATDV=eth1_rename
    DSV=eth1

    SATDV_IP=192.168.81.48
    INTERNAL_IP=10.10.0.1
    DSV_IP=192.160.0.2
# Включаем forward
    echo 1 > /proc/sys/net/ipv4/ip_forward

    echo "Setting up NAT (Network Address Translation)..."

#
# Удалить все действующие правила
#
    iptables -F
    iptables -t nat -F
    iptables -t mangle -F
    iptables -X


# Всегда принимать трафик на loopback-интерфейсе, ЛВС, ADSL
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A INPUT -i $INTERNAL -j ACCEPT
    iptables -A INPUT -i $SATDV -j ACCEPT
    iptables -A INPUT -i $DSV -j ACCEPT
# По умолчанию весь транзит пакетов запрещаем.
    iptables -P FORWARD DROP
    
# Разрешаем все исходящие соединения и оставляем только запрошенные    
    iptables -A FORWARD -i $INTERNAL -o $SATDV -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
    iptables -A FORWARD -i $INTERNAL -o $DSV -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# Сат-ДВ -> ЛВС
    iptables -A FORWARD -i $SATDV -o $INTERNAL -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A FORWARD -i $DSV -o $INTERNAL -m state --state ESTABLISHED,RELATED -j ACCEPT  
#
# Включаем MASQUERADING на интерфейсе Сат-ДВ
    iptables -t nat -A POSTROUTING -o $SATDV -j MASQUERADE
    iptables -t nat -A POSTROUTING -o $DSV -j MASQUERADE

route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.81.249


192.168.81.249 это шлюз в моей локальной сети для доступа к остальным компам.

debian:~# iptables -L -n -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source               destination
    0     0 ACCEPT     0    --  lo     *       0.0.0.0/0            0.0.0.0/0
  427 30383 ACCEPT     0    --  eth0   *       0.0.0.0/0            0.0.0.0/0
2319  169K ACCEPT     0    --  eth1_rename *       0.0.0.0/0            0.0.0.0/0
    0     0 ACCEPT     0    --  eth1   *       0.0.0.0/0            0.0.0.0/0

Chain FORWARD (policy DROP 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source               destination
11987 5490K ACCEPT     0    --  eth0   eth1_rename  0.0.0.0/0            0.0.0.0/0           state NEW,RELATED,ESTABLISHED
  325 45656 ACCEPT     0    --  eth0   eth1    0.0.0.0/0            0.0.0.0/0           state NEW,RELATED,ESTABLISHED
10074 1579K ACCEPT     0    --  eth1_rename eth0    0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
  312  215K ACCEPT     0    --  eth1   eth0    0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED

Chain OUTPUT (policy ACCEPT 1063 packets, 143K bytes)
pkts bytes target     prot opt in     out     source               destination


debian:~# iptables -t nat -L -n -v
Chain PREROUTING (policy ACCEPT 589 packets, 53083 bytes)
pkts bytes target     prot opt in     out     source               destination

Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source               destination
  124 20796 MASQUERADE  0    --  *      eth1_rename  0.0.0.0/0            0.0.0.0/0
   35  1700 MASQUERADE  0    --  *      eth1    0.0.0.0/0            0.0.0.0/0

Chain OUTPUT (policy ACCEPT 3 packets, 173 bytes)
pkts bytes target     prot opt in     out     source               destination

debian:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.81.0    0.0.0.0         255.255.255.0   U     0      0        0 eth1_rename
192.160.0.0     0.0.0.0         255.255.255.0   U     0      0        0 eth1
10.10.0.0       0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.0.0     192.168.81.249  255.255.0.0     UG    0      0        0 eth1_rename
0.0.0.0         192.160.0.1     0.0.0.0         UG    0      0        0 eth1

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

22. "Пробалемама с"  
Сообщение от LS email(ok) on 02-Мрт-09, 03:54 
>Выполняю команду как было сказанно выше. В ответ Permission denied. Вот тут
>то я и понял чё к чему. Добавил право на запись
>на скрипт и всё заработало.
>Всем огромное спасибо за помощь! Возможно скоро ещё потребуется ваша помощь.

я очарован. зачем право "право на запись" в скрипт надо? я бы сказал его там и быть не должно. или я чего-то не понял?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

25. "Пробалемама с"  
Сообщение от Дмитрий (??) on 02-Мрт-09, 08:06 
Пардон, не на запись, а запуск. Очепятка
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

20. "Проблмма с firew"  
Сообщение от LS email(ok) on 02-Мрт-09, 03:42 
>[оверквотинг удален]
>>Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
>> pkts bytes target     prot opt in  
>>   out     source    destination
>
>невижу маскарада,
>вы с такими правилами что хотите получить
>
>следующую команду попробуйте вручную, не из скрипта
>echo 1 > /proc/sys/net/ipv4/ip_forward
>по команде кат должны получить "1"

уточняю: cat /proc/sys/net/ipv4/ip_forward

>если вручную катит, в скрипте пропишите полные пути команд
>например
>/sbin/echo 1 > /proc/sys/net/ipv4/ip_forward
>
>пробуйте :)

вот и первый 5-тибальный (по старой средней школе) телепат наконец-то подтянулся ).

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

26. "Проблмма с firew"  
Сообщение от Дмитрий (??) on 02-Мрт-09, 08:08 
>[оверквотинг удален]
>уточняю: cat /proc/sys/net/ipv4/ip_forward
>
>>если вручную катит, в скрипте пропишите полные пути команд
>>например
>>/sbin/echo 1 > /proc/sys/net/ipv4/ip_forward
>>
>>пробуйте :)
>
>вот и первый 5-тибальный (по старой средней школе) телепат наконец-то подтянулся ).
>

Это юмор такой или я что-то не так сделал?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

27. "Проблмма с firew"  
Сообщение от LS email(ok) on 02-Мрт-09, 08:26 
>[оверквотинг удален]
>>>если вручную катит, в скрипте пропишите полные пути команд
>>>например
>>>/sbin/echo 1 > /proc/sys/net/ipv4/ip_forward
>>>
>>>пробуйте :)
>>
>>вот и первый 5-тибальный (по старой средней школе) телепат наконец-то подтянулся ).
>>
>
>Это юмор такой или я что-то не так сделал?

все так сделал. именно про это юмор и был.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру