Как вы защищаете простой текстовый файл учетных данных с помощью имени пользователя и пароля?

12

Я пытаюсь настроить авто-монтаж сетевого диска. Для сетевого диска требуется пользователь / пароль. На странице руководства для "mount.cifs" есть два способа предоставить пользователя / пароль.

  1. [не рекомендуется] поместить пользователя / pass в / etc / fstab
  2. создайте отдельный файл учетных данных и поместите пользователя / пароль в файл учетных данных

«[опция 2] предпочтительнее, чем иметь пароли в виде открытого текста в общем файле, таком как / etc / fstab. Обязательно защищайте любой файл учетных данных должным образом ».

  • Мой опыт работы: разработчик программного обеспечения, много разработок программного обеспечения для Linux (установка библиотек разработки, установка таких приложений, как Eclipse или java). Я не айтишник или сисадмин.
  • Это на моей собственной машине разработки

Учитывая отсутствие у меня опыта в области ИТ / системного администрирования, каков стандартный рекомендуемый метод для «надлежащей защиты любого файла учетных данных»?

(Я также был бы признателен, если есть несколько методов защиты файла учетных данных, пожалуйста, перечислите их в порядке наиболее распространенных и наименее подходящих).

Тревор Бойд Смит
источник

Ответы:

11

Похоже, что фрагменты справочной страницы, которые вы цитировали, относятся к базовому уровню безопасности, который обеспечивают стандартные права доступа к файлам и разрешения . Файл конфигурации доступен для /etc/fstabчтения любому пользователю системы. Более безопасное место для хранения конфиденциальной информации - это файл с разрешениями, которые могут быть прочитаны только владельцем. Я понимаю, что в вашем случае пользователь будет root .

Допустим, вы положили файл /etc/и назовите его cifs-cred(создайте и отредактируйте его как root). Тогда вы бы использовали

chmod 600 /etc/cifs-cred

Это гарантирует, что только владелец (который должен быть пользователем root ) будет иметь доступ к содержимому. В противном случае, если такая настройка не позволяет правильно настроить вашу систему, это может означать, что файл должен быть доступен для какого-то специального пользователя системы. В этом случае вам может понадобиться

chmod 660 /etc/cifs-cred

или что-то вроде

chown root:wheel /etc/cifs-cred
chmod 660 /etc/cifs-cred

- в зависимости от типа * nix вашей системы и конфигурации системных демонов.


Кроме того, если система может подвергаться риску взлома, вы никогда не должны доверять незашифрованным паролям. Зависимость только от прав доступа к файлу довольно наивна - содержимое файла защищено только от незначительных нарушений безопасности.

rozcietrzewiacz
источник
1
Есть ли какие-либо вопросы или веб-сайты unix.stackexchange.com, на которых говорится о том, чтобы получить тот же результат ... но не «зависят исключительно от прав доступа к файлам»?
Тревор Бойд Смит
К сожалению, эта часть зависит от приложения. Некоторые программы и приложения поддерживают хешированные пароли, другие - нет. Я не знаю, какова ситуация с CIFS / SMB, но, честно говоря, я сомневаюсь, есть ли действительно безопасная альтернатива в этом случае. Вы можете посмотреть на IT Security для получения дополнительной информации.
rozcietrzewiacz
3

Просто установите права unix на rw для монтируемого пользователя:

cat > ~/cifs.credentials <<EOC
user=UserName
pass=PassWord
EOC
chmod 0600 ~/cifs.credentials

Все остальные пользователи не имеют доступа к этому файлу после команды chmod

f4m8
источник