Автоматизируйте сценарий на начальной загрузке для соединения через ssh

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

Вот то, что я пытаюсь сделать. Во-первых я хотел включить ssh без пароля в свою общественность/закрытые ключи использования pi2, но это, кажется, приводит к сбою то независимо от того, что я делаю. Так, я создал ожидать сценарий для вхождения в мой pi2 при определении пароля в рамках сценария. Абсолютно небезопасный я знаю, но все, для чего я использую ssh в этом случае, для вперед определенного порта (который выполняет apache2 - Owncloud) через туннель ssh, таким образом, я могу получить доступ к нему из Интернета. Так как причина, то, что моя Элементарная ОС (базирующаяся Ubuntu 16.04) постоянно подключена к VPN, и без этого порта я не могу использовать свое домашнее облако на работе или нигде далеко от дома. Нет никакого простого способа сделать раздельное туннелирование с этим сервисом VPN, особенно если у Вас есть динамический IP (btw, я - сетевой инженер торговлей, таким образом, это - моя сильная сторона).

Теперь, когда это вне пути. Ожидать скрипт, который я запускаю, следующие.

#!/usr/bin/expect

>set timeout 20

set ip [lindex $argv 0]

set user [lindex $argv 1]

set password [lindex $argv 2]

spawn ssh -fN -R [remote port]:localhost:[local port] "$user\@$ip"

expect "username@x.x.x.x's password:"

send "$password\r";

interact

Затем я конкретный следующее в терминале.

/usr/local/bin/ssh.exp [ip address] [username] [password]

Это работает превосходное, и я могу выполнить сценарий после того, как я вошел в систему.

Я хотел бы получить эту работу автоматически над начальной загрузкой, и до сих пор ничто не работало. Добавление этого к crontab со сбоями @reboot, добавление этого к rc.local также перестали работать. Я задаюсь вопросом, является ли это, потому что это попытки выполнить его на переднем плане или потому что ожидать сценарий, не колотят.

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

1
задан 14 February 2017 в 12:04

1 ответ

Хорошо, таким образом, я понял это после некоторого лужения вокруг.

Полномочия на .ssh папке и authorized_keys файл на пи должны были быть установлены на 655 на обоих, и пользователь должен был быть изменен на пи не корень. Этому удалось устранить мою проблему с входом в систему без пароля.

От этой точки я мог просто выпустить стандарт ssh команда в rc.local, хотя я узнал, что это выполняется как корень. В этом случае мне было нужно к определенному следующее.

ssh -fN -i /home/user/.ssh/id_rsa -R 9000:localhost:5253 pi@x.x.x.x

Достаточно уверенный это теперь сохраняется на перезагрузке, и OwnCloud теперь достижим через сеть.

0
ответ дан 8 December 2019 в 06:36

Другие вопросы по тегам:

Похожие вопросы: