Назад | Перейти на главную страницу

Лучшая практика для хранения пароля для ssh

У меня есть сервер Ubuntu, который запускает определенные сценарии и должен использовать ssh на сервере Windows для выполнения данных. Я разрабатываю с использованием python и использую paramiko для ssh.

В настоящее время ssh-пароль для входа в Windows предоставляется в виде простого текста.

Какие есть хорошие способы сохранить / получить пароль, чтобы, если кто-нибудь прочитает код, он не сможет легко получить пароль?

Лучшая практика - НЕ использовать пароль. Вы всегда должны использовать ключи для аутентификации.

Но вы не можете предотвратить использование пароля или ключа, если они записаны в виде открытого текста в некотором коде. Хотя можно неплохо ограничить использование ключа. В authorized_keys на сервере вы можете просто указать разрешенную команду для выполнения с помощью ключа, что предотвратит доступ к оболочке любому, кто владеет ключом.

Пример строки в ~/.ssh/authorized_keys:

no-port-forwarding,no-pty,no-X11-forwarding,command="your_limited_command" ssh-rsa AAAA[...]==

Более подробное описание опций можно найти на странице руководства для sshd.