Потребовалось получить доступ к папке на сервере с Ubuntu, с возможностью примонтировать её на свой компьютер (тоже Ubuntu).
Чтобы не городить лишний софт и использовать шифрование, воспользуемся протоколом SFTP (SSH File Transfer Protocol), который входит в состав Openssh.
Добавляем в /etc/ssh/ssh_config:Чтобы не городить лишний софт и использовать шифрование, воспользуемся протоколом SFTP (SSH File Transfer Protocol), который входит в состав Openssh.
На сервере
Логинимся на сервер по ssh и создаем пользователя sftp-user, запрещаем ему локальный вход и возможность выходить за пределы своей домашней директории:useradd -d /dev/null -M -s /bin/bash sftp-user
passwd sftp-user
Subsystem sftp internal-sftp
Match User sftp-user
X11Forwarding no
AllowTcpForwarding no
AllowAgentForwarding no
PermitTunnel no
ForceCommand internal-sftp
ChrootDirectory /tmp
В ChrootDirectory указываем требуемую папку, в которую монтировать. Не забудьте проверить права доступа :)На клиенте
Устанавлияваем sftp клиента:apt-get install sshfs
Создаем папку, в которую будем монтировать файловую систему:mkdir /mnt/test
Пробуем соединиться с сервером:sshfs sftp-user@server-ip-address:/tmp /mnt/test/
Далее нужно будет ввести пароль для авторизации и проверить содержимое /mnt/testОтключить соединение можно командой:
umount /mnt/test
Нас, конечно, интересует автоматизация подключения, приступим:Чтобы не вводить пароль, передадим его напрямую:
echo 'password'| sshfs sftp-user@server-ip-address:/tmp /mnt/test/ -o password_stdin
Это небезопасно, так что можно засунуть это конструкцию в скрипт и ограничить доступ до него. Либо вы можете настроить авторизацию по сертификату (Гугл в помощь). Далее можно засунуть команду или полученный скрипт в crontab и монтировать папку при включении компьютера, но это не удобно. Вот здесь я подсмотрел другой способ. Монтирование происходит только при обращении к папке.Устанавливем Automount FUSE и пробуем подключиться:
sudo apt-get install afuse
afuse -o mount_template="sshfs %r:/ %m" -o unmount_template="fusermount -u -z %m" /tmp
Тут можно также накрутить скриптов для автоматизации, но это уже тема отдельного поста.
Комментариев нет:
Отправить комментарий