LINUX.ORG.RU
ФорумTalks

iptables ВСЁ

 ,


1

3
-rwxr-xr-x  0 root   root   100016 Aug  9 18:04 usr/sbin/xtables-legacy-multi
lrwxrwxrwx  0 root   root        0 Aug  9 18:04 usr/sbin/ip6tables-save -> xtables-legacy-multi
lrwxrwxrwx  0 root   root        0 Aug  9 18:04 usr/sbin/ip6tables-restore -> xtables-legacy-multi
lrwxrwxrwx  0 root   root        0 Aug  9 18:04 usr/sbin/ip6tables -> xtables-legacy-multi
lrwxrwxrwx  0 root   root        0 Aug  9 18:04 usr/sbin/ip6tables-legacy-save -> xtables-legacy-multi
lrwxrwxrwx  0 root   root        0 Aug  9 18:04 usr/sbin/ip6tables-legacy-restore -> xtables-legacy-multi
lrwxrwxrwx  0 root   root        0 Aug  9 18:04 usr/sbin/ip6tables-legacy -> xtables-legacy-multi
lrwxrwxrwx  0 root   root        0 Aug  9 18:04 usr/sbin/iptables-save -> xtables-legacy-multi
lrwxrwxrwx  0 root   root        0 Aug  9 18:04 usr/sbin/iptables-restore -> xtables-legacy-multi
lrwxrwxrwx  0 root   root        0 Aug  9 18:04 usr/sbin/iptables -> xtables-legacy-multi
lrwxrwxrwx  0 root   root        0 Aug  9 18:04 usr/sbin/iptables-legacy-save -> xtables-legacy-multi
lrwxrwxrwx  0 root   root        0 Aug  9 18:04 usr/sbin/iptables-legacy-restore -> xtables-legacy-multi
lrwxrwxrwx  0 root   root        0 Aug  9 18:04 usr/sbin/iptables-legacy -> xtables-legacy-multi
lrwxrwxrwx  0 root   root        0 Aug  9 18:04 usr/bin/iptables-xml -> /usr/sbin/xtables-legacy-multi
=======> Building '/usr/ports/core/iptables/iptables#1.8.0-1.pkg.tar.gz' succeeded.
prt-get: updating iptables from 1.6.2-1 to 1.8.0-1

-- Packages updated
iptables

prt-get: updated successfully
★★★★★

Не берегли ресурс, вот и «всё».

Deleted ()

Не прошло и 20 лет как это монструозное говнище закапывают. Ура, товаrищи!

Deleted ()
Ответ на: комментарий от Deleted

Не прошло и 20 лет как это монструозное говнище закапывают. Ура, товаrищи!

20 лет назад появился ipchains

madcore ★★★★★ ()

Ничего не «всё».

Теперь, по ходу, просто 2 разных реализации:

/usr/sbin/xtables-legacy-multi
/usr/sbin/xtables-nft-multi
У прежней версии не было зависимости от libnftnl. А новый iptables уже требует эту библиотеку. С которой и линкуется xtables-nft-multi.

saahriktu ★★★★★ ()

Йеп.

[commagray@Canterlot ~]$ file `which iptables`
/usr/bin/iptables: symbolic link to xtables-multi
commagray ★★★★★ ()

А вот не обновлял бы iptables и сэкономил бы немного ресурсов своего компьютера.

redgremlin ★★★★★ ()
Ответ на: комментарий от Deleted

ты как моя бывшая, «зачем тебе деньги, будешь в семью» (т.е. ей лично) «всё отдавать»

iptables стоит на страже даже тогда, когда ты не всё предусмотрел. я спокойно запускаю тыщупицот сервисов в системе и меня не парит сетевая безопасность, покуда я сам наверняка не разрешу софтине выходить в сеть и/или подключаться к ней.

а ещё у меня на компе три сетевых карточки, одна для интернетов, вторая идёт на роутер, который в свою очередь уже получается находится за NATом и его «небезопасная» прошивка меня тоже мало волнует, однако роутер _просто работает_ и раздаёт wifi. третья карточка идёт на свич и раздаёт интернет по проводам на другие компы дома. этим занимается тоже iptables.

картинка чтобы было понятно https://my.mixtape.moe/owfewx.png

Spoofing ★★★★★ ()
Ответ на: комментарий от Spoofing

Spoofing
моя бывшая
Spoofing
моя бывшая
Spoofing
моя бывшая
Spoofing
моя бывшая
Spoofing
моя бывшая
Spoofing
моя бывшая

я кажется на жаре пересидел...

Deleted ()

Вот и отлично, nft значительно приятнее.

Deleted ()
Ответ на: комментарий от system-root

некий другой ЛОРовец авторитетно заявлял, что скилл метания файерболов по достижению 30 - это обман, он проверял

Harald ★★★★★ ()
Ответ на: комментарий от Deleted

главное, чтобы уже существующие конфиги в несколько километров туда можно было портировать. а то дико влом на всех машинах всё переписывать.

пока вот xtables-multi работает, но я не знаю, какие там у них планы.

Iron_Bug ★★★★★ ()
Последнее исправление: Iron_Bug (всего исправлений: 1)
Ответ на: комментарий от Deleted

Возможность писать конфиги короче километра.

Простите за ленивость сейчас гуглить и втыкать в тему. Но можно конкретный пример из реальной конфы? Чтоб vs, так сказать.

madcore ★★★★★ ()
Ответ на: комментарий от Harald

Да вообще разводилово.
// 30 лет и ещё один день до вечера-кун

d_a ★★★★★ ()
Ответ на: комментарий от intelfx

А вообще у nftables синтаксис, конечно, намного менее отвратителен, чем псевдо-«синтаксис» iptables, но насыпать побольше сахара не помешало бы. Не вижу причин, например, не сделать анонимные цепочки (с возможностью вложения друг в друга), чтобы можно было писать типа такого:

iifname ... do {
    tcp do {
        /* tcp */ dport ssh dnat ...
        /* tcp */ dport http dnat ...
    }
}

Или наоборот:

iifname ... either {
    tcp either {
        dport ssh
        dport http
    }
} accept

intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 3)
Ответ на: комментарий от Spoofing

Ты, как настоящий «профессионал», запихиваешь правила iptables в rc.local?

Вообще-то они должны запускаться после поднятия сети, но до запуска программ :) Если уж ты из себя расово верного параноика изображаешь :)

Deleted ()
Последнее исправление: Deleted (всего исправлений: 1)

Поясните, кто в теме, какие собственно принципиальные отличия? Кроме синтаксиса конфига, вроде те же цепочки, те же правила.
Что есть такое, что можно сделать в nftables, чего нельзя в iptables, или наоборот? В чем смысл xtables-legacy, если xtables-nft тоже реализует интерфейс iptables?

TheAnonymous ★★★★★ ()
Ответ на: комментарий от TheAnonymous

В чем смысл xtables-legacy, если xtables-nft тоже реализует интерфейс iptables?

ну опять по новой? давай просто сделаем вид что ты написал другое?

В чем смысл xtables-legacy, если xtables-nft тоже использует интерфейс netfilter?

ну тогда ответ очень простой, вытекает из названия. первое — легаси. а по рабоче-крестьянски: «гумно. by design»

system-root ★★★★★ ()
Ответ на: комментарий от Wizard_

Гм. Сложно сказать с первого взгляда, но это два разных бинарника, которые слинкованы с разным набором библиотек.

$ du -b /usr/sbin/xtables*
107896  /usr/sbin/xtables-legacy-multi
17      /usr/sbin/xtables-monitor
232152  /usr/sbin/xtables-nft-multi
$ ldd /usr/sbin/xtables-legacy-multi
        linux-vdso.so.1 (0x00007ffff7ffa000)
        libip4tc.so.0 => /usr/lib64/libip4tc.so.0 (0x00007ffff7bce000)
        libip6tc.so.0 => /usr/lib64/libip6tc.so.0 (0x00007ffff79c7000)
        libxtables.so.12 => /usr/lib64/libxtables.so.12 (0x00007ffff77ba000)
        libm.so.6 => /lib64/libm.so.6 (0x00007ffff741f000)
        libpcap.so.1 => /usr/lib64/libpcap.so.1 (0x00007ffff71cd000)
        libc.so.6 => /lib64/libc.so.6 (0x00007ffff6de1000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007ffff6bdd000)
        /lib64/ld-linux-x86-64.so.2 (0x00007ffff7dd5000)
        libusb-1.0.so.0 => /usr/lib64/libusb-1.0.so.0 (0x00007ffff69c5000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007ffff67a6000)
        libnl-genl-3.so.200 => /usr/lib64/libnl-genl-3.so.200 (0x00007ffff65a0000)
        libnl-3.so.200 => /usr/lib64/libnl-3.so.200 (0x00007ffff6380000)
        libdbus-1.so.3 => /usr/lib64/libdbus-1.so.3 (0x00007ffff6131000)
        libudev.so.1 => /lib64/libudev.so.1 (0x00007ffff5f0c000)
$ ldd /usr/sbin/xtables-nft-multi
        linux-vdso.so.1 (0x00007ffff7ffa000)
        libmnl.so.0 => /usr/lib64/libmnl.so.0 (0x00007ffff7bd0000)
        libnftnl.so.7 => /usr/lib64/libnftnl.so.7 (0x00007ffff79a2000)
        libxtables.so.12 => /usr/lib64/libxtables.so.12 (0x00007ffff7795000)
        libm.so.6 => /lib64/libm.so.6 (0x00007ffff73fa000)
        libpcap.so.1 => /usr/lib64/libpcap.so.1 (0x00007ffff71a8000)
        libc.so.6 => /lib64/libc.so.6 (0x00007ffff6dbc000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007ffff6bb8000)
        /lib64/ld-linux-x86-64.so.2 (0x00007ffff7dd5000)
        libusb-1.0.so.0 => /usr/lib64/libusb-1.0.so.0 (0x00007ffff69a0000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007ffff6781000)
        libnl-genl-3.so.200 => /usr/lib64/libnl-genl-3.so.200 (0x00007ffff657b000)
        libnl-3.so.200 => /usr/lib64/libnl-3.so.200 (0x00007ffff635b000)
        libdbus-1.so.3 => /usr/lib64/libdbus-1.so.3 (0x00007ffff610c000)
        libudev.so.1 => /lib64/libudev.so.1 (0x00007ffff5ee7000)

saahriktu ★★★★★ ()
Ответ на: комментарий от system-root

Так они же оба жуют правила в синтаксисе iptables?
Если я правильно понимаю, легаси - это тот самый iptables без изменений, а -nft обёртка, которая сама преобразует в nftables. Ну а в ядре это всё равно использует один и тот же netfilter.

TheAnonymous ★★★★★ ()
Ответ на: комментарий от TheAnonymous

синтаксис iptables — это и есть iptables. весь iptables существует чтобы предоставить тебе синтаксис для работы с netfilter.
понятно, что с оговорками, но на среднем уровне абстракции это так и есть.
вся ценность iptables в предоставлении ручек* к netfilter.
я хз как ещё переформулировать доступнее.

*отвратительное слово, как и батарейки

system-root ★★★★★ ()
Ответ на: комментарий от intelfx

Ну вот я смотрю, nft только дополняет iptables.
Получается, правила iptables всегда преобразуются в nftables, но зачем тогда xtables-legacy?
Просто пока на всякий случай, вдруг где-то что-то сломалось, что какой-нибудь старый конфиг может не взлететь, или есть примеры, где в принципе действия можно сделать только с iptables?

TheAnonymous ★★★★★ ()
Ответ на: комментарий от TheAnonymous

я смотрю, nft только дополняет iptables

да шожь ты по кругу ходишь? nft это другя крутила для netfilter. новее. другая.
это как у тебя есть bash и 100500 гуишных терминалов, никто из них не дополняет друг друга. они просто запускают дефолтный шел где ты можешь сделать rm -rf * в гуйнях. они ынтырфейс.

system-root ★★★★★ ()
Ответ на: комментарий от system-root

никто из них не дополняет друг друга

Ок, не то слово, имелось в виду что nft включает в себя функциональность iptables. Как какой-нибудь навороченный konsole и xterm

TheAnonymous ★★★★★ ()
Последнее исправление: TheAnonymous (всего исправлений: 1)
Ответ на: комментарий от system-root

синтаксис iptables — это и есть iptables

Ну есть же две реализации: -legacy и -nft.
Если я правильно понимаю, -legacy это старый тот самый iptables, который сам крутит ручки. А -nft преобразует вход в формат (синтаксис) nft, который и работает дальше

TheAnonymous ★★★★★ ()
Ответ на: комментарий от Deleted

Возможность писать конфиги короче километра.

Было бы неплохо показать это на конкретных примерах. Наглядно так сказать.

Im_not_a_robot ★★★★★ ()
Ответ на: комментарий от TheAnonymous

короче, есть такие штуки, назовём их модули в ядре.
они там всякие данные хранят эффективным способом, делают всякую работу которая с виду похожа на фаервол.
и вот они общаются с ядром через этот самый netfilter.
а ещё есть cli, чтобы пользователь из своего уютного юзерспейса этим модулям слал всякие правила.
так вот cli и те самые модули — это и есть фаервол. iptables или nft.
у nftables свои модули, лучше чем у iptables, потому что умеют эффективнее по заверениям разработчиков.
но какая тебе разница на эти модули, как они устроенны и всякое такое, если с трёх метров — это всё равно «файрвол»?
nft умеет в синтаксис iptables чтобы люди майдан не устроили, а не потому, что он поверх чего-то из iptables работает.

я вообще не понимаю, почему такое сложно понять?

system-root ★★★★★ ()
Ответ на: комментарий от system-root

nft умеет в синтаксис iptables чтобы люди майдан не устроили

this.
Но legacy тоже оставили, значит таки недостаточно умеет?

а не потому, что он поверх чего-то из iptables работает

Так я это не утверждаю

TheAnonymous ★★★★★ ()
Ответ на: комментарий от TheAnonymous

недостаточно — понятие размытое.
умеет nft дропать layer 7 соединение на основании фазы луны и среднему кол-ву твитов про чикен наггетсы в бангладеше?
вдруг у кого-то такой модуль есть для iptables и используется? а? недостаточно умеет этот ваш nft.

system-root ★★★★★ ()
Ответ на: комментарий от intelfx

Ну так для ценителей синтаксиса были различные средства автоматической генерации правил по красивостям.

madcore ★★★★★ ()
Ответ на: комментарий от system-root

nft умеет в синтаксис iptables

Но он не умеет. Умеет xtables-compat, которому для этого в ядре нужен nf_compat (который уже и транслирует в nf_tables), напрямую они (iptables и nf_tables) несовместимы.

redgremlin ★★★★★ ()
Ответ на: комментарий от redgremlin

nft это интерфейс для пользователя. тут 4 уровня абстракций, ты или говоришь исходя из верхнего уровня или начинается фигня про модули, структуры данных в ядре, всё это вместе переплетено, всякое такое и вот ты уже код на сишечке постишь.

system-root ★★★★★ ()
Ответ на: комментарий от system-root

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

DELIRIUM ☆☆☆☆☆ ()
Ответ на: комментарий от Iron_Bug

точно. зато я знаю, что мои планы сидеть на редхате как можно дольше.

crypt ★★★★★ ()
Ответ на: комментарий от intelfx

А вообще у nftables синтаксис, конечно, намного менее отвратителен, чем псевдо-«синтаксис» iptables

блин, ну это же все дело вкуса:( ес-но, если ты родился вместе с json, то скобочки или javascript-style будет ближе...

мне вот ближе использование cmd line и getopt синтаксиса.

crypt ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.