Да, можно автоматизировать аутентификацию с Raspberry Pi с помощью SSH.
Как предпосылки требуется следующее:
В соответствии с Linux можно установить SSH через Вас диспетчер пакетов, генерировать использование пары ключей ssh-keygen
, скопируйте ключ к Pi, использующему ssh-copy-id
и тестовое использование ssh
.
Большинство дистрибутивов Linux идет с предварительно установленным SSH-клиентом. Если Вы не должны по некоторым причинам иметь один, установите его с помощью диспетчера пакетов:
Для ОСНОВАННЫХ НА ОБ/МИН дистрибутивов Linux (например, Fedora и SuSe):
sudo yum install ssh
Для основанных на DEB дистрибутивов Linux (например, Debian и Ubuntu):
sudo apt-get install ssh
Во-первых, Вам будет нужна общедоступная/частная пара ключей. Таким образом, если Вы не имеете один, выполняете следующую команду для генерации пары ключей с настройками по умолчанию.
$ ssh-keygen
generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/user/.ssh/id_rsa.
Your public key has been saved in /home/user/.ssh/id_rsa.pub.
The key fingerprint is:
24:55:ee:67:83:72:82:55:5f:b9:b4:09:2a:fa:56:a1 user@client.local
The key's randomart image is:
+--[ RSA 2048]----+
| |
| |
| |
| + . |
| S E |
| . + + |
| .o . o.|
| o.oo. oo|
| ==o.BO+|
+-----------------+
Во-вторых, необходимо будет скопировать сгенерированный открытый ключ в машину, к которой Вы хотите зарегистрироваться без пароля. Так, выполните следующую команду на машине и как пользователь, Вы хотите смочь получить доступ к Пи:
$ ssh-copy-id pi@<IP-address-of-your-Pi>
Password:
Now try logging into the machine, with "ssh 'pi@<IP-address-of-your-Pi>'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
Наконец, войдите в систему с помощью SSH, чтобы проверить, что никакой пароль не требуют:
$ ssh pi@<IP-address-of-your-Pi>
Проверьте полномочия на файлах, которые Вы пытаетесь скопировать для проверки пользователя, Вы входите в систему, поскольку по ssh имеет разрешение считать их.