Чтобы добавлять сообщения и комментарии, .

@Strephil:
Strephil

Похоже, что запуск docker'а на десктопе ломает напердоленные правила iptables, и на ноуте пропадает интернет.

@Dant:
Dant

Неплохая шпаргалка/квик-старт-гайд по UFW: cyberciti.biz

@L29Ah:
L29Ah

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

@OCTAGRAM:
OCTAGRAM

-j REDIRECT --to-ports зачем–то ещё и меняет целевой IP на основной IP интерфейса. Вот кто его просил это делать? Не вижу, как отключить. Пришлось перейти на -j DNAT --to-destination

@unfalse:
unfalse

Вот вроде полезная статья в ксакепе и такая чушь в заключении.

@Turbid:
Turbid

Чтобы iptables завелся внутри lxc-контейнера делаем на хосте:
# mkdir /var/lib/lxc/<name>/rootfs/lib/modules
# echo "iptable_filter" >> /etc/modules
и в конфиг контейнера:
lxc.mount.entry = /lib/modules /var/lib/lxc/<name>/rootfs/lib/modules none ro,bind 0 0

@Strephil:
Strephil

Неделю пердолился и решил-таки почитать man iptables.
Там ведь почти всё написано.

@Dant:
Dant

Скриптег файрвола для одиноко-стоящей в интернетах VPS-очки : ) Бета-Версия: pastebin.com

Пока сочинял, узнал про особенные особенности дефолтной политики цепочек иптаблес. Век жыви и все такое...

Оказывается, можно задать умолчательную политику iptables -P INPUT DROP, тогда специальное правило блокировки входящего трафика не нужно, но если потом, вдрук неподумавши, сделать iptables -F — можно лехко и непринужденно отвалиться от сервера и получить долгую дорогу к нему : )

Поэтому, в случае дефолтно-дропающей политики для входящей цепочки, перед iptables -F нужно всегда говорить iptables -P INPUT ACCEPT

А если хочется предсказуемости и не хочется долгой дороги к консоли — все дефолтные политики делаем ACCEPT, а правило DROP указываем явно, последним в цепочке. Такие дела )

@Dant:
Dant

Настройка и починка UFW на OpenVZ VPS. C ipv6 и протокольными модулями — обломсс : )

digitalocean.com
blog.kylemanna.com

@Dant:
Dant

Базовая настройка iptables на одиноком сервере:

iptables -L
iptables -S
iptables -I INPUT 1 -i lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -i eth0 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -i eth0 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -i eth0 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -i eth0 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -i eth0 -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -i eth0 -j ACCEPT
iptables -P INPUT DROP
iptables -L
iptables -S

ip6tables -L
ipt6ables -S
ip6tables -I INPUT 1 -i lo -j ACCEPT
ip6tables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
ip6tables -A INPUT -p tcp --dport 22 -i eth0 -j ACCEPT
ip6tables -A INPUT -p tcp --dport 80 -i eth0 -j ACCEPT
ip6tables -A INPUT -p tcp --dport 443 -i eth0 -j ACCEPT
ip6tables -A INPUT -p udp --dport 53 -i eth0 -j ACCEPT
ip6tables -A INPUT -p tcp --dport 53 -i eth0 -j ACCEPT
ip6tables -P INPUT DROP
ip6tables -L
ip6tables -S

apt-get install iptables-persistent
service iptables-persistent save
service iptables-persistent start
cat /etc/iptables/rules.v4
cat /etc/iptables/rules.v6

@Hawat:
Hawat

Изучаю acl на Cisco, ну почему разработчики iptables не могли тупо скопипиздить? даже в сравнении с pf у cisco все выглядит проще.

@Hawat:
Hawat

А насоветуйте литературы по теории построения фаерволов

@segfault:
segfault

На заметку мудаку: чтобы атомарно изменить правила iptables просто сохраняем их в файл iptables-save потом в удобном редакторе вносим нужные изменения, после чего, загружаем файл с помощью iptables-restore

@Gem:
Gem

conntrack выборочно включен
(через:
-t raw -A INPUT -s to_chto_nado -j ACCEPT
-t raw -A INPUT -j NOTRACK),
очереди прерываний настроены и прибиты к ядрам (чтобы не прыгали), RSS настроен, ring buffer-ы настрое Не выборочно эт ерунда. Если не нужен statefull firewall или nat лучше его вообще выключить +30% к производительности

@seeker:
seeker

эээ я что-то не понял а что -A INPUT -i eth0 -j DROP влияет и на raw пакеты?

@a2TH5:
a2TH5

Есть у кого готовый конфиг столов для марканья пакетов торрент-клиента, пущенного от выделенного юзера? Хочу наконец-то сделать человеческий QoS.

@Gem:
Gem

коменты про аспи восхитительны
opennet.ru

@side2k:
side2k

век живи — век учись. Заебавшись от того, что логи iptables срут в dmesg, наконец-то занялся этой проблемой, и за 5 минут нагуглил ulog. Помогло.

@power:
power

*facepalm
Удивительно здравый коммент среди хабраподобного метанирования.
Только в прыщеядро надо встроить кошерный guile :3

linux.org.ru
"Так в нетбсд вместо «стандартных библиотек» просто встроили lua script в ядро, да и не парятся. У них, судя по всему, скоро вообще один единственный синтаксис конфигурирования ядра останется, на все подсистемы...да еще обширные возможности пилить прототипы будущих реализаций появятся прямо в скриптах ядра. Вот, думаю, куда надо стремится, а не очередной синтаксис изобретать. Все же готовое есть, что велосипедить то. lua очень производительна, генерит байткод и в ядро как показывает нетбсд ее встроить реально...да и придумывалась lua как встраиваемый высокопроизводительный скрипт."

Синтаксис им непривычный, блядь, после iptables. Инертные долбоебы.

@Annoynimous:
Annoynimous

Чят, покажи iptables -L своей ППЭВМ.

@segfault:
segfault

Когда-то был ман по команде iptables, он был ооочень длинный и в нем были абсолютно все параметры с подброным описанием. Сейчас я наблюдаю в системе только man 8 iptables который очень маленький, в нем даже -dport нету. В интернетах тоже не могу найти документацию, где взять ?

@mdma:
mdma

Я таки жуткий оригинал. Собрать на шлюз свежее ядро и забыть включить в нем поддержку IPv4 NAT. Слава Богу я в отпуск с понедельика! :)

@ComradeDOS:
ComradeDOS

Видимо я чего-то не понимаю...
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT icmp — anywhere anywhere icmp echo-reply state RELATED,ESTABLISHED

@silvery:
silvery

$ iptables
Could not open socket to kernel: Operation not permitted

Телефон — Samsung Galaxy Mini. Интересно, это недорут виноват или официальная прошивка такова?

@seeker:
seeker

слушайте а в iptables никак нельзя списки позадавать? Ато мне надо на штук 20 ip открыть штук 5 сервсисов, в итоге конфиг получается сломиногу

@Marchael:
Marchael

Открыл для себя замечательную опцию "-m comment --comment <comment>"

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

@gabas:
gabas

Прошел боевое крещение: первая ddos атака на мой сервачок, видимо ботнет. Интересно, есть смысл писать заяву в отдел К и прикладывать список атакующих IP адресов?

@Turbid:
Turbid

жуйк, ты почему скрывал от меня такую штуку как ipset? /me пошел переписывать костыли...

@ng358ex-2:
ng358ex-2

i.minus.com

@Offoffoff:
Offoffoff

#читаю ман вслух и учусь пробрасывать порт через NAT
sudo iptables -t nat -A PREROUTING -p tcp --dport 8080 -i ppp0 -j DNAT --to 192.168.1.2:80

@k1lg0reTr0ut:
k1lg0reTr0ut

вобщем, надо людям делать проброс из инета в локалку на порт 3389.
но. эти люди получают динамические ip. хотел просто ip заменять на доменные адреса, но бляяя, домен второго уровня содержит дефис, и либо дефис вопринимается кк диапазон, либо вообще не воспринимается, но нихрена не работает.
мне лень прописывать статику для каждого нового удаленника.
есть ли готовые варианты?

@k1lg0reTr0ut:
k1lg0reTr0ut

дано. файлик /etc/sysconfig/iptables
в файлике всякая байда.
вобщем я хочу в некоторых строках писать вместо ip доменные имена локальных хостов. на серваке эти локальные имена резолвятся. просто хост, или хост.домен.loc
вобщем, пишу в файле iptables:

вместо -A PREROUTING -s 217... -d 212... -p tcp -m tcp --dport 8083 -j DNAT --to-destination 192.168.0.135:8083
пишу так: -A PREROUTING -s 217... -d 212... -p tcp -m tcp --dport 8083 -j DNAT --to-destination ws135.blabla-blabla.loc:8083

при применении правил — пишет ошибку. типа нет такого хоста: "ws135.blabla"

похоже проблема в дефисе. хз чо делать. экранировать не получилось.
есть ли истории успеха?

@Turbid:
Turbid

Кэширующий DNS-server на Debian: turbidit.blogspot.com

@wasd:
wasd

Есть такие наркоманские правила:
-A PREROUTING -d 62.76.189.64/32 -j DNAT --to-destination 213.141.144.39
-A POSTROUTING -d 213.141.144.39/32 -j SNAT --to-source 62.76.189.64

То есть, все пакеты, поступающие на 62.76.189.64 перенаправляются к 213.141.144.39, ну вы поняли. Всё вроде бы ок.

Теперь смотрим правила на самом 213.141.144.39:
-A POSTROUTING -d 172.16.0.55/32 -j SNAT --to-source 62.76.189.64
-A PREROUTING -s 62.76.189.64/32 -j DNAT --to-destination 172.16.0.55

То есть, все пакеты, пришедшие от 62.76.189.64 уходят на 172.16.0.55.
Выходит, все пакеты, которые ходят на 62.76.189.64, доходят на 172.16.0.55 моей внутренней сети и всё прекрасно работает.

some_host_from_net => 62.76.189.64 => 213.141.144.39 => 172.16.0.55 (грубо говоря, http-запрос)
172.16.0.55 => 213.141.144.39 => 62.76.189.64 => some_host_from_net (скажем, http-ответ)

Задача — все исходящие коннекты на 172.16.0.55 зароутить через 62.76.189.64. Если на 213.141.144.39 пишем так:
-A POSTROUTING -s 172.16.0.55/32 -j SNAT --to-source 62.76.189.64
то все пакеты зацикливаются и проходят такой путь:

172.16.0.55 => 213.141.144.39 => 62.76.189.64 => 213.141.144.39 => 172.16.0.55
Это не верно. Хост должен подбирать пакеты, пришедшие с 213.141.144.39 до 62.76.189.64 и не направлять их назад, а направить во внешнюю сеть. Как это реализовать?

@anton0xf:
anton0xf

такая ситуация: мне дали доступ по rdp на некоторую удаленную машину (R) с одного ip (это мой линуксовый сервак (S)). хочу, соответственно, заходить на R с домашнего (например) компа (H). делаю, например, так (на S):
$ iptables -F
$ iptables -t nat -F
$ export S_IP=###
$ export DPORT=3389
$ export R_IP=###
$ iptables -t nat -A PREROUTING -i $WAN -d $S_IP -p tcp --dport $DPORT -j LOG --log-level info --log-prefix "PROXY: "
$ iptables -t nat -A PREROUTING -i $WAN -d $S_IP -p tcp --dport $DPORT -j DNAT --to-destination $R_IP
$ /etc/init.d/iptables save
$ /etc/init.d/iptables restart

если теперь на H:
$ rdesktop $S_IP
то записи в логе появляются (на S), но rdp не подключается:
ERROR: #.#.#.#: unable to connect
чяднт?

@Strephil:
Strephil

А вот если суидная программа, то как на нее реагирует -m owner в iptables? или там вот для suid можно прямо правило прописать?

@skobkin-ru:
skobkin-ru

Запилил сегодня в блог пост о том как настраивал проброс портов для "занатовых" виртуалок.
skobkin.ru

@skobkin-ru:
skobkin-ru

Жуйк, говорят в Debian нет встроенного инструмента, который может поднять правила iptables после перезагрузки. В Gentoo и CentOS были конфиги и скрипты запуска. А что с дебианом? Как правильно сделать чтобы после ребута сервер не нагнулся?

@Marchael:
Marchael

Замечали, что некоторые сконвертированные ipv4 адреса в sqlite отрицательные? Есть workaround как сделать обратное преобразование для них?

@Equidamoid:
Equidamoid

Забил временно на проблему из #1725119 на пару дней, сейчас гляжу — пошли пинги. Что-то тут нечисто...