У меня есть домашняя сеть с Wi-Fi, который защищен паролем. В моей домашней сети у меня есть файловый сервер с защищенным паролем общим ресурсом Samba. Сам общий ресурс защищен, потому что в моей сети несколько компьютеров с несколькими пользователями, и я хочу убедиться, что только я могу получить доступ к этому общему ресурсу с любого компьютера, которым я пользуюсь в данный момент (извините за указание очевидного, но я хочу предотвратить ответы из "Вы находитесь в домашней сети, и ваш Wi-Fi уже защищен pw, так зачем вам нужна защита pw для самого ресурса?" так далее).

В настоящее время вот как я монтирую свои общие ресурсы Samba (обратите внимание, часть, относящаяся к моему вопросу, это sec=ntlm):

mount -t cifs //myserver/myshare /media/myshare -o uid=myunixuser,gid=myunixgroup,credentials=/home/myunixuser/.smbcredentials,iocharset=utf8,sec=ntlm,file_mode=0600,dir_mode=0700

Все идет нормально; Тем не менее, я прочитал несколько статей о типах безопасности и почему NTLM не рекомендуется, yada yada (см. статью « Время NTLM прошло »). Я погуглил "ntlm vs ntlmv2 vs kerberos" и попытался узнать больше, прочитав статью в Википедии о NTLM и справочную страницу по Ubuntu по этой теме, но я не совсем зарегистрировался.

Я чувствую, что большая часть документации предназначена для сетевых администраторов, и я больше воин на выходных. В целом я понимаю, что NTLMv2 предпочтительнее NTLM, то же самое с Kerberos, но это не значит, что я должен автоматически выбирать v2 или Kerberos, потому что не все клиенты поддерживают их. Ооо, какого черта? Может ли кто-нибудь замять это для меня? Даже если я придерживаюсь NTLM, я просто хочу понять, как обстоят дела с этими различными вариантами безопасности. Пожалуйста, дайте мне знать, если я слишком много думаю об этом. Благодарю.

1 ответ1

1

Клиенты Windows поддерживают все три, как и последние ядра Linux. Я не знаю ни одного современного клиента, который бы не поддерживал NTLMv2, хотя Kerberos немного реже.

Основное различие между NTLM и Kerberos:

  • NTLM - это механизм ответа на вызов, который работает только с паролями. Таким образом, он может использоваться между любыми двумя хостами, если клиент знает пароль, который хочет сервер.

  • Kerberos основан на билете; клиент получает входной билет из центрального KDC и представляет его серверу. Для этого необходимо настроить область Kerberos - в случае CIFS это обычно домен Active Directory - и где-то размещенный KDC области.

    (Mac OS X - которая раньше предпочитала протокол AFP по сравнению с CIFS - фактически умудряется использовать Kerberos между двумя узлами, используя автоматически генерируемые имена областей, но ни Windows, ни Linux не поддерживают то же самое.)

Тем не мение:

  • Безопасность NTLM версии 1 очень близка к безопасности при простой отправке пароля. NTLMv2 несколько улучшает это, хотя я не уверен, насколько.

  • Между тем Kerberos 5 считается очень безопасным и используется Active Directory, FreeIPA и различным другим программным обеспечением Unix.

К сожалению, для настройки Kerberos требуется некоторое время, и клиенты Windows поддерживают его должным образом (т. Е. Не тратя 3 дня), когда клиент и сервер принадлежат домену AD.

Так что пока вам придется выбирать NTLMv2. Это то, что автономные машины Windows используют по умолчанию, так или иначе. (По умолчанию в современных ядрах Linux используется sec=ntlmssp ; я не совсем уверен, чем он отличается от ntlmv2 , хотя я знаю, что различия не влияют на безопасность.)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .