Книга: Linux глазами хакера
4.11.4. Правила "все кроме"
4.11.4. Правила "все кроме"
Очень часто приходится задавать правила в виде "все кроме". Например, нужно запретить доступ к порту telnet всем пользователям, кроме компьютера с адресом 192.168.77.10. Лучше поступить следующим образом: сначала разрешить доступ для компьютера 192.168.77.10, а потом запретить всем. Тогда в цепочке input будет две записи:
? разрешить подключение к telnet с адреса 192.168.77.10;
? запретить подключение к telnet.
Мы исходили из того, что по умолчанию разрешено все. Тогда, как и положено, все входящие пакеты будут сверяться с первой строкой, и если пакет пришел не с адреса 192.168.77.10, то вторая запись удалит его.
А ведь можно проблему решить одной строкой. Для этого нужно использовать следующее правило:
ipchains -I input 1 -р tcp -s ! 192.168.77.10 telnet -j DENY
В данной команде мы запрещаем (ключ -j DENY
) подключение по протоколу TCP (-p tcp
) всем пакетам, у которых адрес источника (ключ -s
) не равен 192.168.77.10. Символ "!" выступает как знак неравенства, т.е. фильтру будут соответствовать все пакеты, в которых источник не равен указанному.
Такая запись эффективна, если по умолчанию все разрешено. В противном случае пакет от компьютера 192.168.77.10 будет все равно удален.
Знак "!" можно использовать и перед указанием номера порта. Например, нужно разрешить с адреса 192.168.77.12 полный доступ к серверу, .кроме порта telnet. Тогда по умолчанию делаем запрет всего и открываем доступ только компьютеру 192.168.77.12:
ipchains -I input 1 -р tcp -s 192.168.77.12 ! telnet -j ACCEPT
Данная строка разрешает подключение по протоколу TCP компьютеру с адресом 192.168.77.12 на любые порты за исключением telnet, потому что перед именем порта стоит восклицательный знак.
- Правила творческой лени
- Ничего, кроме правды: поведение потребителей
- Восстановление "безнадежных" баз данных. InterBase Surgeon
- Основные "рычаги" управления производительностью
- 1.3. Правила подключения к компьютеру внешних устройств
- Профессиональная терминология не всегда уместна
- 2. Визуальный язык знают все Жест с ручкой в руках
- Домашняя мастерская: вы всегда на работе
- Using Double Quotes to Resolve Variables in Strings with Embedded Spaces
- Правила именования файлов
- 2. Правила вывода Армстронга
- 3. Производные правила вывода