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

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

У меня есть диск CIFS, который я регулярно монтирую, и он требует пароль для него. Поскольку вводить пароль каждый раз раздражает, я написал скрипт, который устанавливает переменную окружения PASSWD, монтирует диск, а затем очищает его (CIFS проверяет переменную окружения PASSWD перед тем, как спросить).

Это работает, и скрипт с моим паролем находится на зашифрованном разделе, но мне это не нравится.

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

Приветствуются и другие предложения по улучшению входа в систему монтирования CIFS, учитывая, что у меня нет прав root на сервере, на котором размещен диск.

РЕДАКТИРОВАТЬ:

Мне нужно кое-что прояснить:

  • У меня есть root-доступ к клиенту (моему ящику), но нет доступа к серверу. Поэтому все решения должны быть на стороне клиента.

  • Меня беспокоит, что у меня есть текстовая копия моего пароля для любого, кто получит физический доступ к моему ноутбуку. В настоящее время мой раздел /home зашифрован, поэтому мой скрипт достаточно защищен, когда ноутбук выключен.

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

решение1

Я обычно использую этот automountсервис для таких акций, которые я периодически хочу монтировать и использовать. Настройка этого, как только вы поймете, как это сделать, довольно тривиальна.

Шаг №1 — настройка автомонтирования

Вам нужно убедиться, что пакеты установлены. В CentOS 6 это будет autofs. Скорее всего, другие дистрибутивы будут использовать похожее имя. Затем вам нужно будет создать следующие файлы:

# /etc/auto.master
/mymountpt          /etc/auto.mymountpt --timeout=600 --ghost

# /etc/auto.mymountpt
someshare                  -fstype=cifs,rw,noperm,netbiosname=${HOST},credentials=/etc/credentials.txt ://cifsserver/sharename

# /etc/credentials.txt
username=mydom\myuser
password=somepassword

Вам нужно будет установить разрешения для этого последнего файла следующим образом:

$ sudo chmod 600 /etc/credentials.txt

Вам также необходимо убедиться, что NSS (коммутатор службы имен) знает об этой настройке:

# /etc/nsswitch.conf
automount:  files nisplus

После установки этих файлов вы сможете запустить autofsслужбу.

$ sudo service autofs start

Шаг №2 — тестирование

После запуска службы вы сможете получить доступ к этому пути по своему желанию:

$ cd /mymountpt/someshare

Монтирование этого общего ресурса теперь регулируется , autofsкоторый будет отслеживать 600 секунд бездействия, после чего он отключит общий ресурс.

Этот подход может показаться немного жестким, но, сделав это, вы избавили свою систему от необходимости зависеть от определенного общего ресурса CIFS, доступного при загрузке. Вы переместили его так, что теперь он доступен по требованию, когда он фактически используется.

Что делать, если у вас нет root-прав?

Если вы обнаружите, что у вас не установлены эти пакеты и вы не можете их установить, то ваши возможности значительно сужаются.

Я бы посмотрел наСтатья о Samba в ArchLinux Wiki, он охватывает и другие методы. Вы также можете использовать FUSE для монтирования различных типов носителей в качестве локальных каталогов, включая SMB/CIFS. Это рассматривается вСтатья FUSESmb на Ubuntu Wiki.

Рекомендации

Связанный контент