Comments 45
Спрячте gif ниже ката, т. к. вне зависимости от наличия спойлера он загружается браузером.
Тогда они все будут видны в выводе команды ps?
Да, вы правы, некоторые примеры не самые лучшие в плане безопасности.
Но решения для RDP, VNC, SMB и FTP (не FileZilla) лишены этого недостатка.
Для остальных программ вы можете просто убрать пароль из аргументов команды, и точно так же иницилизировать нуные подключения прямо из keepass, а пароль вводить привычным для вас способом.
Но я не могу избавится от привычки копипасты из того же keepass2.
В дополнение к своей статье хочу рассказать про замечательный плагин для браузера: PassIFox для Mozilla Firefox и chromeIPass для Google Chrome.
В отличии от KeeFox он интегрируется вместо встроенной функции сохранения паролей в браузере, не изменяет стандартный интерфейс браузера и не создает новые диалоговые окна. (что особенно радует в тайловых wm)
Не знаю как chromeIPass, но PassIFox мне очень понравился, до этого я пользовался KeeFox, но он ужасно глючит в тайлинге. :(
Нет, вы сами придумываете схему, а потом говорите KeePass'у, что для этой схемы делать.
В вашем случае нужно использовать комманду open.
ответ на StackOverflow
То есть ваша комманда должна выглядеть примерно следующим образом:
cmd://open ./AppName.app --args -AppCommandLineArg
Вы про SSH? Не пробовал, но думаю, что такой вариант вполне сработает:
cmd://bash -c 'FILE=$HOME/.ssh/id_rsa.tmp ; echo {PASSWORD} > $FILE && chmod 600 $FILE ; xterm -e ssh -i $FILE -o StrictHostKeyChecking=no kvaps@localhost ; rm -f $FILE'
При этом сам закрытый ключ вам придется хранить в поле пароль
-pw {BASE:PORT} -pw "{PASSWORD}"
Я полагаю что для порта должно быть не -pw.
Нашел также ошибки в статье: в VNC и Teamviewer для Windows перед сценарием нет cmd://
Вот у меня запись на работе
cmd://{DB_DIR}\putty.lnk -ssh -l {USERNAME} -pw {PASSWORD} {S:IP}
cmd://{DB_DIR}\winscp.lnk scp://{USERNAME}:{PASSWORD}@{S:IP}
Да и таймаут перед закрытием в cmd совсем не нужен.
На мой взгляд, правильно будет так:
cmd://cmd /c "cmdkey /generic:TERMSRV/{URL:HOST} /user:{USERNAME} /pass:{PASSWORD} && mstsc /v:{BASE:RMVSCM} && cmdkey /delete:TERMSRV/{URL:HOST}"
Спасибо, поправил.
cmd://cmd /c "cmdkey /generic:TERMSRV/{URL:HOST} /user:{USERNAME} /pass:{PASSWORD} && start mstsc /v:{BASE:RMVSCM} && timeout /t 10 /nobreak && cmdkey /delete:TERMSRV/{URL:HOST}"
Настраиваем URL Overrides в Keepass2