Некоторые картинки не загружаются из РФ и РК, используйте VPN.
Показаны сообщения с ярлыком KeePass. Показать все сообщения
Показаны сообщения с ярлыком KeePass. Показать все сообщения

суббота, 20 апреля 2024 г.

Keepass клик по URL - открытие SCP соединения с автоматической авторизацией в WinSCP

В 4ый раз делать скрин мне лень, логика та же

Отталкиваясь от описания можно заставить KeePass открывать SCP соединение с автоматической авторизацией в WinSCP. Cтрочка "URL override":

cmd://%systemdrive%\progra~2\WinSCP\WinSCP.exe {BASE:RMVSCM} /newinstance /username={USERNAME} /password={PASSWORD} 

У WinScp отдельного параметра для порта нет, поэтому без извращений

среда, 21 февраля 2024 г.

Script posh Keepass Выбор профиля Chrome

По-умолчанию двойной клик по полю url с протоколом https/http открывает новую вкладку chrome в ближайшем окне (если смотреть по порядку). При этом не важно, какой там профиль. Меня это не устраивает. Поэтому я начал искать пути решения.

Первый вариант был привязать тег keepass к папке и добавлять его как параметр --profile-directory, но оказывается я не могу использовать теги.

Следующий вариант был - получить в окне powershell список профилей из каталога %userprofile%\AppData\Local\Google\Chrome\User Data\, но тут лежат не только профили, а сами профили имеют отличные, от заданных в chrome, имена. В итоге выяснилось, что информация об именах и каталогах хранится в файле %userprofile%\AppData\Local\Google\Chrome\User Data\Local State. Это JSON файл, и, к сожалению, в одну строчку распарсить его не получится. Поэтому родился вот такой скрипт с дополнительными проверками. Скрипт выдает таблицу



где нужно ввести номер строки с профилем, этот профиль и будет загружен.

четверг, 21 сентября 2023 г.

Keepass клик по URL - открытие Filezilla

Отталкиваясь от описания можно заставить FileZille открывать FTP соединение с автоматической авторизацией. Cтрочка "URL override":

cmd://%systemdrive%\progra~1\Filezi~1\filezilla.exe ftp://{USERNAME}:{PASSWORD}@{BASE:RMVSCM}

понедельник, 15 мая 2023 г.

Keepass клик по URL - открытие SSH соединения в PUTTY с авторизацией

В 4ый раз делать скрин мне лень, логика та же

Отталкиваясь от описания можно заставить KeePass открывать SSH соединение с автоматической авторизацией в PUTTY. Это конечно не best practics, ибо эту же проблему решают ssh ключи, но такое возможно, строчка "URL override":

cmd://Putty.exe -ssh {USERNAME}@{BASE:RMVSCM} -pw {PASSWORD}

Обновление 12/10/2023. Вылез косяк с нестандартными портами, новый вариант выглядит так:

cmd://Putty.exe -ssh {BASE:HOST} -l {USERNAME} -pw {PASSWORD} -P {T-REPLACE-RX:#{BASE:PORT}#-1#22#}

Конструкция в конце говорит, что если порт не найден (не указан в url через ":"), то вставить 22

среда, 19 апреля 2023 г.

Keepass клик по URL - открытие RDP соединения с авторизацией

 
Отталкиваясь от описания можно заставить KeePass открывать RDP соединение с автоматической авторизацией. Вообще сам mstsc не поддерживает, но можно заранее записать креды, а потом удалить, собственно эта строчка именно это и делает

cmd://powershell.exe "cmdkey /add:{BASE:RMVSCM} /user:{USERNAME} /pass:{PASSWORD}; mstsc /v:{BASE:RMVSCM}; timeout 10; cmdkey /delete:{BASE:RMVSCM}"

Вариант с подстановкой адреса сервера как домена для имени пользователя

cmd://powershell.exe "cmdkey /add:{BASE:RMVSCM} /user:{BASE:RMVSCM}\{USERNAME} /pass:{PASSWORD}; mstsc /v:{BASE:RMVSCM}; timeout 10; cmdkey /delete:{BASE:RMVSCM}"

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

Скорее всего не прокатит для тех, у кого стоит запрет сохранения пароля на стороне сервера и также не поддерживается шлюз

Up

Да, не прокатит, а вот со шлюзом тоже  можно настроить.

cmd://powershell.exe "cmdkey /add:{BASE:RMVSCM} /user:{USERNAME} /pass:{PASSWORD}; cmdkey /add:{S:rdpGateway} /user:{USERNAME} /pass:{PASSWORD}; mstsc /v:{BASE:RMVSCM} /g:{S:rdpGateway}; timeout 10; cmdkey /delete:{BASE:RMVSCM};cmdkey /delete:{S:rdpGateway}"

Здесь мы добавляем учетку сразу для шлюза и для сервера, если они совпадают. При этом адрес шлюза записан на вкладке Advanced в String Fields

Лично я сделал отдельную схему для вариантов со шлюзом - grdp

UP

Есть косяк с паролями, которые содержат знак $

Обновление 12/10/2023. Вылез косяк с нестандартными портами, новый вариант выглядит так:

cmd://powershell.exe -NoProfile -WindowStyle Hidden -Command "$user=\"{T-REPLACE-RX:#{BASE:HOST}\{USERNAME}#(.*)\\(.*)\\(.*)#$2\$3#}\"; cmdkey /add:{BASE:HOST} /user:$user /pass:\"{PASSWORD}\"; mstsc /v:{BASE:RMVSCM}; timeout 10; cmdkey /delete:{BASE:HOST}"

И

cmd://powershell.exe -NoProfile -WindowStyle Hidden -Command "$user=\"{T-REPLACE-RX:#{BASE:HOST}\{USERNAME}#(.*)\\(.*)\\(.*)#$2\$3#}\"; cmdkey /add:{BASE:HOST} /user:$user /pass:\"{PASSWORD}\"; cmdkey /add:{S:rdpGateway} /user:$user /pass:\"{PASSWORD}\"; mstsc /v:{BASE:RMVSCM} /g:{S:rdpGateway}; timeout 10; cmdkey /delete:{BASE:HOST};cmdkey /delete:{S:rdpGateway};"

Поясню, конструкция:

"{T-REPLACE-RX:#{BASE:HOST}\{USERNAME}#(.*)\\(.*)\\(.*)#$2\$3#}"

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

А конструкция:

-NoProfile -WindowStyle Hidden -Command

Скрывает окно сразу, в диагностических целях можно не добавлять

P.S. даже в кавычках, пароль не принимается со знаком $

четверг, 9 февраля 2023 г.

Keepass клик по URL - открытие Anydesk

Отталкиваясь от описания можно заставить KeePass открывать Anydesk с указанным ID, ID просто передается первым параметром для anydesk.exe.

cmd://"%PROGRAMFILES(x86)%\AnyDesk\AnyDesk.exe" {BASE:RMVSCM}

А как ему еще и пароль воткнуть?

cmd://cmd.exe /C "echo  {PASSWORD}  | "%PROGRAMFILES(x86)%\AnyDesk\AnyDesk.exe" {BASE:RMVSCM} --with-password"

Но, у этого варианта есть косяк - окно консоли будет висеть до тех пор, пока процесс anydesk не будет завершен

Но, если использовать не CMD, а powershell, то окно закроется сразу после отправки команды

cmd://powershell.exe "echo  {PASSWORD}  | "C:\progra~2\AnyDesk\AnyDesk.exe" {BASE:RMVSCM} --with-password"

При этом ExecutionPolicy корректировать не надо

Отмечу, что Anydesk устанавливается в "C:\Programm Files (x86)" и из-за пробелов такая конструкция вызовет ошибку:

cmd://powershell.exe -NoProfile -WindowStyle Hidden -Command "echo  {PASSWORD}  | %PROGRAMFILES(x86)%\anydesk\anydesk.exe {BASE:RMVSCM} --with-password"

UP январь 2024 года. После переустановки ОС и установки последней версии KeePass, перестал работать предыдщуий вариант. Выдавал ошибку:

Выражения допускаются только в качестве первого элемента конвейера.

Вот такой вариант работает

cmd://powershell.exe -NoProfile -WindowStyle Hidden -Command "Write-Output  {PASSWORD}  | &"$Env:ProgramFiles\AnyDesk\AnyDesk.exe" {BASE:RMVSCM} --with-password"

понедельник, 5 декабря 2022 г.

Keepass клик по URL - открытие Winbox

 В Keepass можно настроить открытие той или иной программы по клику на URL, и передать в программу параметрами некоторые данные. Мне захотелось настроить это дело для WinBox. сам Winbox имеет порядковые параметры:

winbox64.exe ADDRESS USERNAME PASSWORD

Как видим, ничего сложного в открытии программы с предопределенными параметрами, теперь добавим это дело в настройки KeePass:


cmd://"%PROGRAMFILES%\Winbox\winbox64.exe" {BASE:RMVSCM} {USERNAME} {PASSWORD}

Предполагается что сам Winbox (x64) находится по пути "\Program Files\Winbox\" и назывется winbox64.exe

Все, теперь в поле URL пишем winbox:\\address и оно будет работать