5 февраля 2016 г.

Подключение удаленных каталогов по SSHFS с помощью AutoFS

Для начала установим sshfs и autofs. Выполним команду:
sudo aptitude install sshfs autofs

Доступ по ssh без пароля
Сделаем возможным подключение по ssh к удаленному серверу по ключу, а не по паролю:
Генерируем RSA ключи с правами root:
sudo ssh-keygen -t rsa
(Вводим свой пароль.)
Отвечаем на вопросы:
1. Enter file in which to save the key (/root/.ssh/id_rsa): - соглашаемся на значение по умолчанию.
2. Enter passphrase (empty for no passphrase): - Оставляем значение пустым. Паролем пользоваться не будем.
3. Enter same passphrase again: - Снова оставляем значение пустым.



Скрипт создал 2 ключа: приватный и публичный.
Your identification has been saved in /root/.ssh/id_rsa. - секретный приватный ключ для декодирования.
Your public key has been saved in /root/.ssh/id_rsa.pub. - публичный ключ для кодирования.
Сейчас нужно скопировать на сервер наш публичный ключ:
sudo ssh-copy-id -i ~/.ssh/id_rsa.pub '-p 22 user@server'
Всё. Теперь попробуем залогиниться:
sudo ssh -p22 user@server

Настройка autofs.
Открываем на редактирование файл /etc/auto.master:
sudo nano /etc/auto.master
и добавляем строку:
/mnt/sshfs /etc/auto.sshfs uid=1000,gid=1000,--timeout=6000,--ghost
где /mnt/sshfs - это папка, за которой будет следить наш autofs.
Теперь создадим файл /etc/auto.sshfs
sudo nano /etc/auto.sshfs
и запишем в него:
server1 -fuse,port=22,rw,nodev,nonempty,noatime,allow_other,max_read=65536 :sshfs\#user@server\:/home/user
Создаем папку, куда будет монтироваться каталог на удаленном сервере:
sudo mkdir /mnt/sshfs
И перезапускаем сервис autofs:
sudo service autofs restart
Теперь у нас все настроено. При заходе в папку /mnt/sshfs у нас автоматически примонтируется сервер, что можно сразу же проверить.

Комментариев нет: