Loading AI tools
З Вікіпедії, вільної енциклопедії
Iptables — утиліта командного рядка, стандартний інтерфейс керування роботою міжмережевого екрана (брандмауеру) Netfilter для ядер Linux від версії 2.4. Всупереч поширеній думці, ані iptables, ані netfilter не виконують маршрутизацію пакетів і не керують нею. Netfilter лише фільтрує та модифікує (також для NAT) пакети за правилами, вказаними адміністратором через утиліту iptables. Для використання утиліти iptables потрібні привілеї суперкористувача (root).
Автор | Русті Рассел |
---|---|
Розробник | Netfilter Core Team |
Перший випуск | 1998 |
Стабільний випуск | 1.4.14 (26 травня 2011 ) |
Платформа | Ядро Linux і Linux-libred |
Операційна система | Linux |
Мова програмування | C |
Ліцензія | GNU General Public License |
Репозиторій | http://git.netfilter.org/iptables/, https://git.netfilter.org/iptables/, git://git.netfilter.org/iptables |
Вебсайт | www.netfilter.org |
Іноді під словом iptables йдеться про сам міжмережевий екран netfilter.
DNAT — від англ. Destination Network Address Translation — Зміна Мережевої Адреси Отримувача. DNAT — це зміна адреси призначення у заголовку пакета. Найчастіше використовують у парі з SNAT. Основне застосування — використання єдиної реальної IP-адреси кількома комп'ютерами для виходу до Інтернету та умов надання додаткових мережевих послуг зовнішнім клієнтам.
Потік (Stream) — під цим терміном йдеться про з'єднання, крізь яке передаються і приймаються пакети. Я використав цей термін для позначення з'єднання, якими передається меншою мірою 2 пакети в обох напрямах. Що стосується TCP це означатиме з'єднання, крізь яке передається SYN пакет і далі приймається SYN/ACK пакет. Але це також може передбачати й передачу SYN пакета і прийом повідомлення ICMP Host unreachable. Інакше кажучи, використовую цей термін у досить широкому діапазоні застосувань.
SNAT — від англ. Source Network Address Translation — Зміна Мережевого Адресу Відправника. SNAT — це й зміна вихідного адресу в заголовку пакета. Основне застосування — використання єдиного реального IP-адресу кількома комп'ютерами для виходу до Інтернету. В теперішній час діапазон реальних IP-адрес, за стандартом IPv4, недостатньо широкий, та їх бракує усім (перехід на IPv6 дозволить позбутись цієї проблеми).
Стан (State) — під цим терміном йдеться про стан, де знаходиться пакет, відповідно до RFC 793 — Transmission Control Protocol, і ті трактування, які є у netfilter/iptables. Хочу звернути вашу увагу на той факт, що визначення станів пакетів, як внутрішніх, так зовнішніх станів, що використовуються Netfilter, в повному обсязі відповідають зазначеному вище у RFC 793.
Простір користувача (User space) — під цим терміном йдеться про усе, що розміщено поза ядром, наприклад: команда iptables -h виконується поза ядром, тоді як команда iptables -A FORWARD -p tcp -j ACCEPT виконується (частково) у просторі ядра, оскільки вона додає нове правило до наявного набору.
Простір ядра (Kernel space) — більшою або меншою мірою є твердженням, зворотним терміну «Простір користувача». Ідеться про місце виконання — всередині ядра.
За допомогою iptables можна, наприклад перенаправити трафік зі стандартного порту HTTP (80) на якийсь порт який не вимагає від сервера прав суперкористувача аби мати можливість на ньому слухати[1]:
sudo iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.