Linux: hosts.allow, hosts.deny - как разрешить все, кроме хостов, упомянутых в hosts.deny

Как настроить hosts.allow и hosts.deny, чтобы разрешить все соединения со всех хостов, кроме некоторых хостов / портов, указанных в hosts.deny?

Вот что у меня сейчас в этих файлах:

hosts.allow:

ALL:ALL

hosts.deny:

somehost:someport

Я хочу разрешить все соединения, кроме somehost: someport, но вышеуказанная конфигурация не работает.

РЕДАКТИРОВАТЬ:

Ну, я обнаружил, что в этом случае hosts.allow должен быть пустым файлом, но он по-прежнему разрешает соединения в некотором порту...

2 ответа

Вы получили это задом наперед.

Это должно быть так:

someport : somehost

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

И вы правы в отношении hosts.allow, он должен быть пустым, так как действие по умолчанию - принять.

Вы также можете использовать расширенный формат, описанный в hosts_options(5), и использовать только /etc/hosts.allow.

Другие вопросы по тегам