Аутентификация пароля обхода аутентификации SSH только для определенного пользователя - PullRequest
0 голосов
/ 04 апреля 2019

Я пытаюсь создать сценарий bash, который подключается к другим серверам для выполнения базового мониторинга, такого как проверка дискового пространства, и получение этой информации по электронной почте. Мне все еще нужны все эти серверы, требующие пароль для общего входа / доступа пользователей, но для этого конкретного сценария мониторинга я не хочу спрашивать пароль (только общий ключ ssh)

Как настроить конкретного пользователя (давайте назовем его monitor) подключиться к серверу с помощью следующей команды, но не запрашивать пароль (как это будет для cron, поэтому необходимо автоматизировать)

// ssh на сервер web1 и получить дисковое пространство

cmd=$(ssh web1 df -h | grep -E "xvda1|xvde1" | awk '{print $5};' | sort -r | head -1)

Допустим, на серверах 3 пользователя: 'monitor', 'bob' & 'paul'

Когда он попадает в эту часть сценария, ssh web1 вынуждает меня ввести пароль - возможно ли настроить конкретного пользователя (в данном случае monitor пользователь) на возможность аутентификации и входа в систему с использованием ssh some-ip без запроса пароля, но все же он запрашивает пароли, когда bob или paul пытаются войти?

Ответы [ 2 ]

2 голосов
/ 04 апреля 2019

Да, это довольно просто: просто создайте ключ SSH для монитора только для пользователя (ssh-keygen), а затем скопируйте его закрытый ключ на другие серверы (ssh-copy-id SERVER-IP-OR-NAME).

Просто проверьте, PubkeyAuthentication включено на сервере, но включено по умолчанию ...

Таким образом, пользователь monitor будет зарегистрирован без запроса пароля, а другим пользователям потребуется их пароль.

1 голос
/ 04 апреля 2019

Возможно, вам нужно скопировать ключ RSA на сервер и включить аутентификацию RSA.

Вы можете сгенерировать ключ, используя ssh-keygen и следуя инструкциям, затем скопировать его на сервер, используя ssh-copy-id и включив PubkeyAuthentication на сервере. Обязательно перезапустите sshd.service!

Ресурс: Документы openSSH

...