Вы не можете.
Независимо от того, что Вы делаете, Ваши пользователи могут обойти его и сохранить их пароль в файле простого текста так или иначе. Если Вы отключите опцию в клиентском двоичном файле, то они загрузят или скомпилируют другой клиент. Как правило, если Вы настроите неприятные меры безопасности (такие как необходимость ввести пароль для каждой svn операции), то Ваши пользователи обойдут их способом, который делает безопасность хуже. (Например, пишущий сценарий обертки, который содержит их пароль. Который они оставят читаемым миром.) Так не делают этого.
Повторить: Вы не можете одними только техническими мерами, препятствовать тому, чтобы пользователи хранили свой пароль в файле. Можно запретить его, но если это сделает их жизнь трудной, то они сделают это так или иначе.
Если Вы обеспокоены ноутбуком или копируете воровство, шифруете корневой каталог пользователей. Это защитит пароли, а также данные. Если целый корневой каталог шифруется, пароль шифрования обычно является тем же как паролем входа в систему по причинам удобства использования. Обязательно имейте резервную политику пароля (например, изолированный конверт), начиная с потери пароля шифрования неисправимо.
Если Вы обеспокоены повторным использованием пароля, налагаете случайное (следовательно уникальный) пароль, который они введут раз и навсегда в их клиент. Имейте простой процесс для изменения поставленных под угрозу паролей, конечно.
Смотрите на вывод lsof | grep 'bash.*cwd'
. Это скажет Вам текущие рабочие каталоги процессов.
Если Вы имеете pstree
, смотрите на его вывод. В противном случае смотрите на вывод ps aux -H
. Это скажет Вам, какие процессы владеют этими таинственными процессами.
Начните просматривать конфигурационные файлы для чего-либо подозрительного. Вот неполный список, которые необходимо проверить:
~/.bash*
~/.profile
/etc/profile
/etc/bash*
/etc/cron.*/*
[process name]
средства это ps
не может найти, что аргументы процесса, включая аргумент 0, который содержит название файла, который выполнялся для создания процесса. Это означает lsof /bin/bash
не найдет эти процессы.
Можно также смотреть на вывод:
ps -p <pid> -o pid,user,tty,comm,args
Некоторые сценарии оболочки появятся как /bin/bash
или perl
в выводе top
но args
аргумент в выводе ps
должен дать Вам точное выполнение сценария.
--forest
. Я оставляю вопрос открытым в надеждах, что я могу сделать что-то, если это происходит снова. – terdon♦ 03.07.2013, 22:13cwd
хороший совет в следующий раз. – terdon♦ 04.07.2013, 00:28