Иллюстрированный самоучитель по Linux

Основы безопасности в сети

Вопросы безопасности весьма актуальны при соединении с сетью и доступе к ее ресурсам многих пользователей. К счастью, в Linux существует механизм, позволяющий контролировать, какие компьютеры в сети пытаются соединиться для получения услуг конкретной системы Linux.

Этот базисный механизм безопасности обеспечивается двумя файлами: /etc/hosts.allow и /etc/hosts.deny. Они являются лишь звеном в цепи безопасности, которая состоит из трех звеньев.

  1. Разрешение доступа для любой комбинации демон-клиент в hosts.allow.
  2. Отказ в доступе для любой комбинации демон-клиент в hosts.deny.
  3. Предоставление доступа кому угодно.

По умолчанию записи в hosts.allow и в hosts.deny отсутствуют, то есть по умолчанию любой пользователь может установить соединение с системой. Конечно, это не запрещает индивидуальным сервисам, например Telnet и FTP, требовать дальнейшей аутентификации. Это также не исключает те начальные попытки соединения, которыми начинаются многие хакерские атаки через неизвестные системы.

Создать записи для hosts.allow и hosts.deny просто.

Список_демонов Список_клиентов

Любая запись, подобная этой, указывает, какие демоны сети (f tpd, in.telnetd, in.rshd) могут разрешить соединение с конкретным хост-компьютером (в файле hosts.allow) или отказать в установлении соединения с каким-то хост-компьютером (в hosts.deny). В списке может быть указан любой демон сети. Например, запись:

ftp: host1

…в файле hosts.allow позволяет установить входное FTP-соединение с указанным компьютером hostl по его инициативе.

Несколько специальных ключевых слов облегчают задачу, исключая необходимость в поименном списке всех демонов и клиентов. Ключевое слово ALL может соответствовать любому клиенту или любому демону. Например, запись:

ALL: ALL

…в файле hosts.allow позволяет осуществить любой тип доступа любому клиенту, в то время как аналогичная запись в hosts .deny запрещает все возможные соединения.

Ключевое слово EXCEPT указывает исключения в сети, в которой разрешены все возможные соединения с помощью ключевого слова ALL. Например, запись:

ALL EXCEPT ftpd: ALL

…в файле hosts .deny запрещает доступ всем клиентам ко всем сервисам, исключая FTP. Аналогично:

ALL:.local.domain EXCEPT foo.local.domain

…в hosts .allow разрешает доступ ко всем сервисам для любого компьютера в домене local.domain (обратите внимание на "." перед local.domain), исключая foo.local.domain.

Наконец, ключевое слово LOCAL позволяет легко указать доступ для всех машин в локальном домене:

ALL: LOCAL

…в hosts.allow, предоставляя любой тип доступа с компьютеров в локальном домене.

Файлы hosts.allow и hosts.deny могут содержать разнообразные записи, что позволяет осуществлять более тонкий контроль, чем необходимо для большинства пользователей. С деталями настроек можно познакомиться на странице руководства для hosts.allow:

$ man hosts.allow

Что дальше

В этой главе рассмотрены принципы подключения персонального компьютера, работающего под управлением Linux, к сети Ethernet, использующей протокол TCP/IP. Читатель мог убедиться, что Linux легко соединяется в сети с системами Unix, включая и другие Linux-системы.

Однако полная интеграция системы Linux с сетями Windows и Novell требует больших усилий. В следующей главе мы рассмотрим основы взаимодействия системы Linux с Windows и Novell.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.