Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Същност и опции на IPTABLES

Featured Replies

Нека темата е полезна за употребяващите UNIX OS

IPTABLES

IPTABLES е firewall с невероятни възможности.. С него можете да филтрирате пакети или да маскирате ip адреси или портове(ip masquerade, NAT, PAT) и тн..

За да извършва филтриране на пакети или маскиране iptables се води по така наречените вериги(chains)- логически групиран списък от правила. Всяко правило от веригата е тест, на който ip хедърът се подлага.

Веригите съдържат правила започващи от едно. Можете да задавате правилата или чрез спецификация, или чрез номер.

Спецификацията на правило( rule specification ) е правилото или ( наборът от правила ), на което пакетът трябва да отговаря - тестът. Едно и също основно правило може да съществува в няколко вериги, така че аргументът верига(вижте по-долу) обикновено е задължителен. Ако целта на веригата е една от следните: ACCEPT (пропускане на пакета), DROP (отхвърляне на пакета), REJECT (отхвърляне на пакета и връщане на съобщение за грешка) или MASQUERADE (маскиране на пакета), тази цел завършва веригата, така че в тази верига няма да бъдат изпълнявани повече правила.

Всички правила в iptables имат основен синтаксис. Този синтаксис е:

iptables [-t таблица] команда верига спецификация-на-правило [опции]

Това е обобщение и синтаксисът на някои команди е леко модифициран.

Таблици на IPTABLES

Първата част от синтаксиса на iptables е незадължителната опция -t таблица.Подразбиращата се таблица е filter. Възможните таблици включват filter, mangle и nat. Таблицата mangle се използва, когато искате да модифицирате TOS(Type of Service) битове или да поставите върху пакета маркер, който netfilter може да използва за поставяне в опашка и на други неща. Таблицата nat се използва за SNAT(Source NAT), DNAT (Destination NAT) и маскиране(masquerade). Тя имплементира веригите PREROUTING или POSTROUTING(преди или след маршрутизиране).

За да разберете по-добре как работят таблиците, стартирайте всяка от следните команди и забележете резултата.

iptables -L -n

iptables -t filter -L -n

iptables -t mangle -L -n

iptables -t nat -L -n

Първите две команди са идентични. Третата и четвъртата ще изведат нещо много различно от тях и ще ви помогнат да разберете веригите, включени във всяка таблица.

Команди и Опции на iptables

-A (append - добавяне)-Добавяне на правило към края на дадена верига. Тази команда приема като задължителни аргументи име на верига и спецификация на правило

-D (delete-изтриване)- Изтриване на правилата от дадена верига. Тази команда приема като задължителни аргументи име на верига и спецификация на правило или номер на правило.

-C (check-проверка)-изискват се -s, -d, -p, -i . Тази команда приема като задължителни аргументи име на верига и спецификация на правило.

-I (insert-вмъкване)- Вмъкване на правиала в зададена верига. Разширение на -А, но спецификацията на правило се поставя пред зададен номер на правило. Тази команда приема като задъжителни аргументи име на верига, номер на правило, пред което се вмъква и спецификацията на правило

-R (replace-заменяне)- Заменяне на правило в зададена верига. Комбинация от Insert и Delete. Тази команда приема като задължителни аргументи име на верига, номер на правило и спецификация на правило. Спецификацията замества номера в зададената верига.

-F (flush-изчистване)- Изтриване на всички правила в дадена верига или във всички вериги, ако не е зададено име на верига.

-L (list-списък)- Извеждане на списък на всички правила в дадена верига или във всички вериги, ако не е зададено име на верига.

-z (zero-нулиране)- Нулиране на броячите. Нулира броячите в зададена верига или във всички вериги, ако не е зададено име на верига.

-N (new-нова)- Създаване на потребителски дефинирана верига. Тази команда изисква само име на веригакато задължителен аргумент.

-X (Изтриване на потребителски дефинирана верига)- Тази команда изисква име на верига. Тази верига трябва да бъде празна. Подрабиращите се вериги не могат да бъдат изчистени.

-P (policy-политика)- Задаване на политика за дадена верига. Тази команда приема като задължителни аргументи име на верига и цел

-E (rename chain-преименуване на верига)- Тази команда приема като задължителни аргументи старо име на верига и ново име на верига.

-h (help-помощ)- Помощ за синтаксиса на командите..

Опции на IPTABLES

С известен брой опции можете да използвате знака ! за обръщане на значението им.

-p [!] протокол - Може да приема ! (например -р ! icmp, което отговаря на всички други съобщения , с изключение на icmp съобщенията) или all, което отговаря на всички протоколи.

-s [!] адрес - Адрес на източника. Може да приема !, мреова маска или порт. Адресът 0/0 отговаря на всички адреси и е подразбиращият се, ако не зададете опция -s.

-d [!] адрес - Адрес на получателя. Същите критерии както за -s.

-i [!] име - Име на входния интерфейс. Mже да приема !. Приема в името на интерфейса наставка +, която обозначава всички интерфейси от съответния тип; тоест ррр+ означава всички РРР интерфейси (ррр0 - рррN). Тази опция може да се отнася само към входния интерфейс, така че не може да бъде използвана във веригите OUTPUT или POSTROUTING (или във вериги, извикани от тези вериги).

-o [!] име - Име на изходния интерфейс. Подобна е на опцията -i, но се прилага само за изходния интерфейс и съответните вериги.

-j цел - Действието (целта) за правилното (име на потребителски дефинирана верига или специална стойност), ако пакетът отговаря на него. Специалните стойности ACCEPT ( propuskane na paketa), DROP ( отхвърляне на пакета), QUEUE ( предаване на пакета към пространството на потребителя ) или RETURN ( спиране на изпълнението на тази верига и продължаване от следващото правило в предходната [извикваща] верига ), завършват веригата.

-n - Указва адресите и портовете да се извегдат като числа. По подразбиране iptables се опитва да ги преобразува.

-v - Режим на подробно извеждане. Извежда интерфейсния адрес , опциите на правилата (ако има такива), TOS маските и броячите на пакетите и байтовете. Използвайте -vv (2 v-та) за изключително подробно извеждане.

-x Разширяване на чиалата. Когато броячите на пакетите и байтовете се визуализират, не се използват съкращенията K, M или G, а се визуализират само нули.

[!] -f - Вторият и следващите фрагменти. Може да бъде предшествана от !.

--line-numbers - Използва се при извеждане на правилата и показва номерата на редовете преди спецификациите.

--sport [!] порт[:порт] - Валидна е само сле опция -р tcp или -р udp. Задава порт на източника или диапазон от портове ( диапазоните се задават чрез използване на знаковте - или : за разделяне на крайната и началната стойност на диапазона). Можете да я използвате с опцията -m multiport ( до 15 порта могат да бъдат зададени). Ето някои примерни фрагменти от правилата:

-p tcp --sport 0:1023

-m multiport -p tcp --sport 25,110

--dport [!] порт[:порт] - Валидна е само след някоя от опциите -р tcp или -p udp. Подобна е на опцията --sport, но задава порта (портовете) на местоназначението.

--tcp-flags [!] списък с флагове - Валидна е само след опцията -р tcp. Тази опция изцледва списъка с флагове и дава съвпадение само ако те са единствените вдигнати флагове. Възможните флагове включват: SYN, ACK, FIN, RST, URG, PSH и ALL NONE. Ако искате да изследвате флаговете SYN, ACK, RST и FIN, но да приемате само тези, които са с вдигнати SYN и ACK флагове (отговор за нова конекция), фрагментът от правилото ще изглежда по следния начин:

-p tcp --tcp-flags SYN,ACK,RST,FIN SYN,ACK

[!]--syn - Валидна е само след опцията -p tcp. Еквивалентна е на следното:

--tcp-flags SYN,RST,ACK SYN

--icmp-type [!]ICMP [под]тип - Валидна е само с опцията -p icmp.

Следват валидните ICMP типове и подтипове ( с отместване навътре под главния тип):

echo-replay (pong)

destination-unreachable

network-unreachable

host-unreachable

protocol-unreachable

port-unreachable

fragmentation-needed

source-route-failed

network-unknown

host-unknown

network-prohibited

host-prohibited

TOS-network-unreachable

TOS-host-unreachable

communication-prohibited

host-precedence-violation

precedence-cutoff

source-quench

redirect

network-redirect

host-redirect

TOS-network-redirect

TOS-host-redirect

echo-request (ping)

router-advertisement

router-solicitation

time-exceeded (ttl-exceeded)

ttl-zero-during-transmit

ttl-zero-during-reassembly

parameter-problem

ip-header-bad

required-option-missing

timestamp-request

timestamp-reply

address-mask-request

address-mask-reply

--mac-source [!]mac-адрес - Валидна само след опцята -m mac. Полезна е във веригите INPUT или PREROUTING. Фрагментът от правилото ще изглежда по следния начин:

-m mac --mac-source 00:00:ab:c0:45:a8

--limit скорост - Максималната скорост на съвпаденията (средна стойност). Стойността по подразбиране е 3/hour; всичко под тази скорост се отхвърля. Ако вашата система не може да поддържа повече от една нова конекция за секунда, можете да използвате limit със следния фрагмент от правило

-p tcp --syn

за да предпазите вашия сървър от претоварване, въпрки че това обикновено се използва с целта LOG, за да предпазите дневниците от прекалено бързо разрастване. Скоростта може да включва период от време( подразбиращата се стойност е /hour) - /minute, /second, /hour или /day. Ето един примерен фрагмент от правило:

-m limit --limit 1/sec

--limit-burst брой - Максималният начален брой пакети, които да съвпадат, преди да започне използването на предходящото --limit скорост. Тази стойност се увеличава с едно всеки път, когато предходящото условие --limit скорост не е изпълнено. Подразбиращата се стойност за --limit-burst е 5.

--port [порт[,порт]] - Валидна е само с опцията -p tcp или -p udp и сле опцията -m multiport ( вижте фрагмента от правилото, който следва).Съвпадение има само ако адресът на източника, и адресът на получателя са едни и същи и съвпадат с опционално зададения порт ( позволени са до 15 разделени със запетаи портове). Ето един примерен фрагмент от правиото за множество портове, който съвпада само с портовете 25 и 110:

-m multiport -p tcp -- port 25,110

--mark стойност[/маска] - Съвпада с пакетите с даден маркер (стойност без знак). Тази стойност трябва да бъде зададена чрез целта MARK.

--uid-owner uid -Валидна е само когато се използва във веригата OUTPUT. Идентифицира пакетите, създадени от определен потребител, и дори тогава работи само за някои лоакално създадени пакети.

-------------

Повече подробности.

За управление на IPTABLES има и графични инструменти. Едни от най-популярните са Guarddog и Firestarter.

Редактирано от MDMA (преглед на промените)

Регистрирайте се или влезете в профила си за да коментирате

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    32%
    Дарени 315 € от нужните 1 000 €

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.