Автоматически подключаем файловую систему сервера с помощью SSH

Я уже давно борюсь с всякими «плохими» делами, которые отнимают много лишнего времени, на свое исполнение. В предыдущей статье я затронул тему создания шаблонов писем, которые существенно облегчают жизнь человеку, пишущему много и часто.

Сегодня пойдет речь о том, как я автоматизировал подключение файловой системы своего сервера к рабочему компьютеру. Благодаря этому я работаю со своими боевыми сайтами точно также, как я это делаю с сайтами на тестовой площадке, развернутой на моей рабочей машине.

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

Решение, как оказывается есть. Это же Linux. Есть пакет Expect, который позволяет анализировать вывод консоли и в зависимости от ее ответа, делать какие-то действия. Это сродни if…else в программировании. очень удобная и гибкая штука.

Вот код bash-скрипта, который творит такие чудеса:
#!/bin/bash
expect -f- <<ENDSCRIPT
spawn -ignore HUP /usr/bin/sshfs root@188.54.212.209:/var/www/admin/www/ /home/itshaman/sshfs
expect "*assword*"
send "X_nmJKsdf8Zgrrv4z\r"
expect "\n"
ENDSCRIPT
  • Третья строчка – это сама команда подключения, тут ничего разъяснять надеюсь не нужно.
  • Четвертая строчка – это фраза, которую нужно отслеживать (так сказать программерский if).
  • Пятая строчка – это ответная фраза, которую нужно ввести. В нашем случае это пароль для подключения к серверу. В примере, это X_nmJKsdf8Zgrrv4z – пароль. Символы \r в конце строки говорят, что потом нужен .

P.S. Я повешал этот скрипт на хоткей и когда мне нужно подключаюсь к серверу за пару секунд. Экономит уйму времени.

Комментарии
Имя
e-mail
Текст комментария: # ×


Комментарии
Облако тегов
Интересное