Защита NFS
5.4. Защита NFS
Сетевая файловая система (Network File System) или NFS — это служба, предоставляющая доступные по сети файловые системы компьютерам клиентов. За дополнительными сведениями о работе NFS обратитесь к главе Сетевая файловая система (NFS) Справочного руководства по Red Hat Enterprise Linux. За дополнительной информацией о настройке NFS обратитесь к Руководству по системному администрированию Red Hat Enterprise Linux. В следующих разделах подразумевается, что вы знакомы с NFS.
Важно | |
---|---|
Версия NFS, включённая в Red Hat Enterprise Linux, NFSv4, более не требует службы portmap, как было замечено в разделе 5.2 Защита Portmap. Теперь при использовании NFSv4 NFS-трафик использует TCP, а не UDP. NFSv4 также включает проверку подлинности групп и пользователей через Kerberos, реализованную модулем ядра RPCSEC_GSS. Информация о portmap по-прежнему включается, так как Red Hat Enterprise Linux поддерживает NFSv2 и NFSv3, где используется эта служба. |
5.4.1. Проектируйте сеть аккуратно
Теперь NFSv4 способна шифровать всю передаваемую по сети информацию с помощью Kerberos, и поэтому важно, чтобы эта служба была правильно настроена, если она находится за брандмауэром или в сегментированной сети. NFSv2 и NFSv3 по-прежнему передают незащищённые данные, и это следует принимать во внимание. Организация сети с учётом всех этих замечаний поможет вам избавиться от брешей в безопасности.
5.4.2. Опасайтесь синтаксических ошибок
Сервер NFS определяет, какие файловые системы экспортировать и какие узлы получат к ним доступ с помощью файла /etc/exports. Будьте внимательны и не добавляйте лишних пробелов, редактируя этот файл.
Например, следующая строка в файле /etc/exports предоставляет каталог /tmp/nfs/ для чтения/записи с компьютера bob.example.com.
/tmp/nfs/ bob.example.com(rw) |
А эта строка файла/etc/exports, напротив, определяет для того же каталога компьютеру bob.example.com разрешение только на чтение, а всем разрешает не только чтение, но и запись, и их отличие состоит всего в одном пробеле после имени компьютера.
/tmp/nfs/ bob.example.com (rw) |
Выработайте хорошую привычку и проверяйте все настроенные общие ресурсы NFS с помощью команды showmount:
showmount -e <hostname> |
5.4.3. Не используйте параметр no_root_squash
По умолчанию в общих ресурсах NFS пользователь root становится обычным бесправным пользователем nfsnobody. Таким образом, владельцем всех файлов, созданных root, становится nfsnobody, что предотвращает загрузку на сервер программ с установленным битом setuid.
Если указан параметр no_root_squash, удалённые пользователи root могут изменить любой файл в разделяемой файловой системе и оставить для других пользователей троянские приложения.