This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
autolab:network:ssh-access [2022/12/10 09:08] 127.0.0.1 external edit |
autolab:network:ssh-access [2023/02/17 10:16] (current) sergey_glazunov |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Доступ по ssh в 3501 ====== | ====== Доступ по ssh в 3501 ====== | ||
+ | ===== duckietown ===== | ||
+ | |||
+ | В лаборатории в рамках duckietown можно подключаться к duckiebot и к watchtower по ssh. Пример подключения к duckiebot01.local | ||
+ | |||
+ | <code> | ||
+ | ssh duckie@autobot01.local | ||
+ | </code> | ||
+ | |||
+ | # Пароль: **quackquack** | ||
+ | |||
+ | |||
+ | Так как подключаться приходится часто, можно воспользоваться кодом на bash, который необходимо положить(добавить в конец файла) в **~/.bashrc**(лежит в домашней директории) для ускорения процесса | ||
+ | |||
+ | <code> | ||
+ | function duckiebot() { | ||
+ | #do things with parameters like $1 such as | ||
+ | if [[ -z $2 ]]; then | ||
+ | echo "Connecting to autobot$1 via ssh..." | ||
+ | sshpass -p "quackquack" ssh -o StrictHostKeyChecking=no duckie@autobot$1.local | ||
+ | else | ||
+ | echo "Exec command $2 on autobot$1" | ||
+ | sshpass -p "quackquack" ssh -o StrictHostKeyChecking=no duckie@autobot$1.local $2 | ||
+ | fi | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | Почему это работает? Все устройства .local имена названы по шаблону [autobot|watchtower]\d+.local | ||
+ | |||
+ | Для watchtower необходимо скопировать вышеописанную функцию: | ||
+ | |||
+ | <code> | ||
+ | function watchtower() { | ||
+ | #do things with parameters like $1 such as | ||
+ | if [[ -z $2 ]]; then | ||
+ | echo "Connecting to watchtower$1 via ssh..." | ||
+ | sshpass -p "quackquack" ssh -o StrictHostKeyChecking=no duckie@watchtower$1.local | ||
+ | else | ||
+ | echo "Exec command $2 on watchtower$1" | ||
+ | sshpass -p "quackquack" ssh -o StrictHostKeyChecking=no duckie@watchtower$1.local $2 | ||
+ | fi | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ==== Примеры использования ==== | ||
+ | |||
+ | Подключение к watchtower02 | ||
+ | <code> | ||
+ | $ watchower 02 | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ===== Подключение к хостам ===== | ||
+ | |||
+ | В лаборатории имеются сервера/компьютеры, к которым имеется доступ по ssh. Для каждого устройства создается ssh ключ, по которому можно подключиться. **По паролю нельзя подключиться ни к одному устройства кроме тех, которые относится к duckietown** | ||
+ | |||
+ | Если Вы обладатель ключа, то к устройству можно подключиться следующим образом: | ||
+ | |||
+ | <code> | ||
+ | ssh -i key.pem user@hostname.local | ||
+ | </code> | ||
+ | |||
+ | Где: | ||
+ | * key.pem -- файл, в котором находится зашифрованный ключ | ||
+ | * user -- имя пользователя, к которому подключается | ||
+ | * hostname.local -- имя хоста в **локальной** сети | ||
+ | |||
+ | |||
+ | <note important> | ||
+ | key.pem должен быть защищен, поэтому перед первым использованием необходимо **chmod 600 key.pem** | ||
+ | </note> |