2014-01-15 2 views
0

У меня есть пара открытого/закрытого ключа для ssh-соединений с сервером S, но теперь, даже если вы делаете ssh на другое устройство, которое не нуждается любой ключ аутентификации, у меня всегда есть сообщение:Linux: SSH/SCP Запросить кодовую фразу id_dsa даже в соединениях без ключа

> ssh [email protected] 
Enter passphrase for key '/home/user/.ssh/id_dsa': 
[email protected]'s password: 

Обычно я попал войти в первый вопрос (оставляя его пустым) и я введите пароль пользователя на второй вопрос.

Но, поскольку я хочу написать некоторые скрипты для автоматизации некоторых вещей, сообщение «Введите парольную фразу для ключа/home/user/.ssh/id_dsa»: меня беспокоит.

Почему он появляется для каждого запроса на соединение? Могу ли я что-то сделать, чтобы он не спросил меня, что для каждого соединения? Просто с сервером S?

Благодаря

+1

unix.stackexchange.com, вероятно, будет лучше спросить это. – Barmar

ответ

1

На основе this ServerFault answer:

ssh -o PubkeyAuthentication=no host.example.org

Чтобы не вводить его каждый раз, вы можете добавить что-то вроде этого, чтобы ~/.ssh/config

Host host.example.org 
PubkeyAuthentication no 
+0

Он работает, но поскольку я выполняю скрипт в Ruby для выполнения scp, он все еще спрашивает меня. Я помещал эти строки в/etc/ssh/ssh_conf, но это не сработало –

+0

Вы сами называете 'scp', или используете какую-либо библиотеку, например' Net :: SCP'? Если бывший, 'scp -o PubkeyAuthentication = no bluh host.example.org:' работает для меня. Если позже вам может понадобиться вручную создать ssh-соединение с нужными параметрами с помощью 'Net :: SSH' и использовать его. – aland

2

Предполагая, что вы используете Linux ssh-agent для хранения ваших ключей, поэтому вам не нужно набирать их.

Using ssh-agent to manage your keys

+0

Спасибо за ваш ответ, но мне нравится набирать мой ключ, если нужно, кажется более безопасным –