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/30 12:53] sergey_glazunov |
autolab:network:ssh-access [2023/02/17 10:16] (current) sergey_glazunov |
||
---|---|---|---|
Line 3: | Line 3: | ||
===== duckietown ===== | ===== duckietown ===== | ||
- | В лаборатории в рамках duckietown можно подключиться к duckiebot и к watchtower по ssh. Пример подключения к duckiebot01.local | + | В лаборатории в рамках duckietown можно подключаться к duckiebot и к watchtower по ssh. Пример подключения к duckiebot01.local |
<code> | <code> | ||
ssh duckie@autobot01.local | ssh duckie@autobot01.local | ||
- | # psw: quackquack | ||
</code> | </code> | ||
- | Так как подключаться приходится часто, можно воспользоваться кодом на bash, который необходимо положить в .bashrc | + | # Пароль: **quackquack** |
+ | |||
+ | |||
+ | Так как подключаться приходится часто, можно воспользоваться кодом на bash, который необходимо положить(добавить в конец файла) в **~/.bashrc**(лежит в домашней директории) для ускорения процесса | ||
<code> | <code> | ||
Line 25: | Line 27: | ||
</code> | </code> | ||
- | Почему это работает? Все устройства .local имена названы по шаблону autobot*.local | + | Почему это работает? Все устройства .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 -- имя хоста в **локальной** сети | ||
- | Для watchtower необходимо скопировать вышеописанную функцию и поменять везде duckiebot на watchtower | + | <note important> |
+ | key.pem должен быть защищен, поэтому перед первым использованием необходимо **chmod 600 key.pem** | ||
+ | </note> |