hosts.allow: Не требуемый при использовании iptables?

Необходимо создать пользователя Samba, соответствующего пользователю Linux, долю которого Вы пытаетесь смонтировать. Попытайтесь работать smbpasswd -a user создать ввод пароля Samba для пользователя user.

2
23.02.2013, 18:05
3 ответа

hosts.* файлы не требуются при использовании iptables. У обоих есть способность отклонить/позволить доступ, но работу совсем другими способами.

       Network
          |
       IPTables
         /  \  
TCPWrapper  Squid/Daemon
  Daemon

Iptables является пакетом основы ядра, фильтрующим платформу, работающую на слое ниже tcpwrappers. Если Вы ОТБРАСЫВАЕТЕ или ОТКЛОНЯЕТЕ что-то с iptables пакет никогда не будет достигать пространства пользователя. Не имеет значения, что программа или как это записано, пакет никогда не будет существовать от, он - точка зрения.

Программы, которые используют TCPwrappers и это hosts.* функциональность, выполненная в пространстве пользователя и, должна быть создана с libwrap, чтобы использовать файлы или эмулировать его путем чтения файлов hosts и заключительных соединений, которые они получают от отклоненных клиентов.

Сквид не читает hosts.deny|allow файлы. Это имеет свою собственную реализацию для управления доступом, указанного с acl's в squid.conf. Таким же образом можно настроить управление доступом сквидов сверху iptables, можно использовать hosts.deny/allow сверху iptables. Те правила только начинают действовать, если iptables имеет, позвольте нам трафик через. Не то, чтобы много программ поддерживают tcp_wrappers в эти дни также, inetd, супер сервер, был основной один бит, медленно исчезает.

4
27.01.2020, 21:49
  • 1
    iptables работает на хосте, поэтому даже если Вы ОТБРАСЫВАЕТЕ или ОТКЛОНЯЕТЕ пакет, он достиг системы. Это - несколько незначительная деталь, но это иногда важно. исправленный –  a CVn 23.02.2013, 15:48
  • 2
    , аплодисменты –  Matt 23.02.2013, 16:13

Короткий ответ: да. TCPwrappers (который является тем, что консультируется с hosts.allow и hosts.deny) является отдельным методом управления доступом от iptables, с помощью каждого не требует или препятствует использованию другого. Единственное беспокойство будет состоять в том, чтобы гарантировать, что требуемый доступ предоставляется через обоих, если они оба активны в системе.

6
27.01.2020, 21:49

Причина, которую Вы все еще можете подключить к SSH с пустым hosts.allow, состоит, вероятно в том, потому что по умолчанию tcpwrappers позволяет все соединения, если Вы явно не отклоняете их.

Один способ получить противоположное (значение по умолчанию отклоняют) поведение состоит в том, чтобы добавить следующую строку к/etc/hosts.deny (осторожный, чтобы не не допустить себя!)

ALL: ALL


Tcpwrappers (hosts.allow и hosts.deny) не работает на каждую сетевую службу, как iptables делает.

Можно часто видеть, поддерживает ли демон tcpwrappers путем проверки, связан ли он против libwrap, как это:

$ ldd /usr/sbin/sshd | grep libwrap
    libwrap.so.0 => /lib64/libwrap.so.0 (0x00007f389b5a2000)

Если нет никакого вывода, tcpwrappers, вероятно, не поддерживается тем демоном.

На заключительной ноте я думаю, что очень общая установка должна только использовать iptables и оставить tcpwrappers ненастроенным.

3
27.01.2020, 21:49
  • 1
    Мой hosts.deny высказывание остроты ALL: PARANOID. Я полагаю, что ssh является еще одним сервисом, который не смотрит на hosts.allow|deny. –  zebonaut 23.02.2013, 17:57
  • 2
    @zebonaut: Но параноидальный не блокирует все. Это только блоки, заключая в кавычки man hosts_access, Соответствуют любой хост, имя которого не соответствует своему адресу. –  0xC0000022L 23.02.2013, 19:00
  • 3
    Поскольку Вы видите от моего ldd пример, sshd может на самом деле поддерживать tcpwrappers. –  foo 24.02.2013, 12:45

Теги

Похожие вопросы