Я использую proftp и не знаю, как правильно настроить пользователя и группы.
В моем proftpd.conf я настроил:
# Set the user and group that the server runs as
User proftp
Group proftp
Это повлияет на пользователя системы, служба proftpd запущена.
В mod_sql есть варианты таких же настроек, которые мне кажутся удвоенными:
# The SQLDefaultGID directive configures the default GID for users.
# This value must be greater than any configured SQLMinUserGID. Default: 65533
SQLDefaultGID xxxx
# The SQLDefaultUID directive configures the default UID for users.
# This value must be greater than any configured SQLMinUserUID. Default: 65533
SQLDefaultUID xxxx
Существуют также службы proftpd, которые запускают этого пользователя, поскольку я могу использовать верхняя.
Есть ли какая-нибудь передовая практика, как установить эти значения для максимальной безопасности?
Эти настройки не имеют прямого отношения, кроме того, оба могут вызвать появление процессов proftpd, запущенных от имени этого пользователя.
Первые контролируют, какой идентификатор пользователя будет переключать главный процесс после инициализации с полными привилегиями root, чтобы иметь возможность получить все необходимые привилегии.
Другие (SQL) настройки - это значения по умолчанию, которые вступают в игру только в том случае, если пользователи аутентифицированы с помощью mod_sql, и запросы, используемые для этого, не возвращают эту информацию. Так что от вашей настройки SQL зависит, используются ли они вообще. Если они применяются к таким пользователям с аутентификацией sql, то процессы, обрабатывающие сеансы для пользователей, будут выполняться с этим UID / GID - и используются операционной системой для проверки разрешений файловой системы и в качестве владельца / группы по умолчанию для вновь созданных файлов. и папки.
Как вы хотите настроить любую несистемную аутентификацию, такую как SQL, зависит от ваших потребностей.
Если все пользователи в базе данных привязаны к некоторому отдельному каталогу и не являются пользователями оболочки или чем-то подобным, может быть нормально и удобно, если они будут использовать все один идентификатор пользователя / идентификатор группы, который вы, вероятно, также определите как пользователь операционной системы / -group, чтобы файлы и процессы были перечислены в оболочке с известным именем. То же самое может применяться для некоторых общих директорий только для записи, только для чтения или даже для чтения-записи, назначенных пользователю, если это нормально или необходимо, чтобы все пользователи имели одинаковые права доступа.
Если вы хотите поделиться какой-либо датой между пользователями или если они или некоторые из них будут получать доступ к файлам, на которые у них есть разрешения, через FTP, также из оболочки и т. Д., Вы можете захотеть иметь уникальные идентификаторы пользователя и некоторые группы, в которые пользователи входят индивидуально или в целом назначен. Но в этом случае вам необходимо дополнительно создать пользователей в качестве пользователей системы или указать системе, чтобы она также использовала SQL User-DB, или вы должны справиться с различными числовыми идентификаторами, назначенными на уровне операционной системы. Также можно было бы использовать UID как некую первичную группу, чтобы пользователи с похожими или одинаковыми разрешениями использовали один UID.
В конце концов, это действительно зависит только от того, чего вы хотите добиться - и от того, как пользователи (помимо root) получают доступ к системе. И от того, есть ли у вас уже какие-то настройки по умолчанию, которые вы хотите использовать вместо того, чтобы постоянно менять их без реальной необходимости.