Служба portmap — это демон, предназначенный для динамического назначения портов служб RPC, например, NIS и NFS. В него встроены слабые механизмы проверки подлинности, и он может выбирать порты для управляемых служб из широкого диапазона. Поэтому защитить его сложно.
Замечание | |
---|---|
Защита portmap влияет только на реализации NFSv2 и NFSv3, так как в NFSv4 она больше не нужна. Служба portmap, о которой идёт речь дальше, понадобится вам, только если вы планируете внедрять сервер NFSv2 or NFSv3. |
Если вы используете службы RPC, придерживайтесь этих основных правил.
Обязательно используйте оболочки TCP для определения сетей или узлов, имеющих доступ к службе portmap, так как в ней отсутствует встроенная проверка подлинности.
Кроме этого, ограничивая доступ к службе, используйте только IP-адреса. Избегайте использования имён узлов, так как их можно подделать, в частности, обманув DNS.
Чтобы ещё сильнее ограничить доступ к службе portmap, добавьте на сервере правила IPTables и разрешите доступ только к определённым сетям.
Ниже приведены два примера команд IPTables, допускающих TCP-подключения к службе portmap (прослушивающей порт 111) из сети 192.168.0/24 и с локального компьютера (это обязательно для службы sgi_fam, используемой в Nautilus). Все остальные пакеты отбрасываются.
iptables -A INPUT -p tcp -s! 192.168.0.0/24 --dport 111 -j DROP iptables -A INPUT -p tcp -s 127.0.0.1 --dport 111 -j ACCEPT |
Чтобы также ограничить трафик UDP, выполните следующую команду:
iptables -A INPUT -p udp -s! 192.168.0.0/24 --dport 111 -j DROP |
Подсказка | |
---|---|
Узнать больше о реализации брандмауэра на основе IPTables, вы сможете в главе 7 Брандмауэры. |