В этой инструкции рассматривается, как установить клиент SSHFS в Linux и как смонтировать Storage Box.

Установка SSHFS

SSHFS — это программное обеспечение на базе Linux, которое необходимо установить

Ubuntu / Debian

apt update
apt install sshfs

RHEL & Centos

yum install sshfs

Примонтирование Storage Box

Чтобы примонтировать удаленный каталог, пользователь SSH должен иметь к нему доступ. Команда монтирования SSHFS имеет следующий вид:

sshfs <username>@<username>.your-storagebox.de: /mnt/

Если вы хотите навсегда примонтировать удаленный каталог, вам необходимо отредактировать файл /etc/fstab на локальном компьютере и добавить новую точку монтирования. При создании постоянного монтирования убедитесь, что вы можете подключить удаленный хост с помощью аутентификации на основе ключа SSH.

Откройте файл fstab

nano /etc/fstab

Прокрутите файл до конца и добавьте следующую запись

<username>@<username>.your-storagebox.de: /mnt/ fuse.sshfs defaults 0 0

Отмонтирование удаленной файловой системы

fusermount -u /mnt

SSH-ключ аутентификации для Storage Box

Если вы используете SCP, SFTP, rsync или BorgBackup, вы можете войти в систему с помощью аутентификации по ключу SSH без ввода пароля.

Важное примечание: в зависимости от порта SSH используемой вами учетной записи для storage box, вам может потребоваться использовать определенный формат для открытого ключа SSH. Для порта 22 SSH (только SFTP и SCP) необходимо использовать открытый ключ SSH в формате RFC4716. Для порта 23 SSH (SFTP, SCP, rsync и BorgBackup) необходимо использовать общий открытый ключ SSH в формате OpenSSH. Если вы хотите использовать сервисы через оба порта, вы должны хранить открытый ключ SSH в обоих форматах.

Использование ключа ed25519 не поддерживается на SSH-порту 22.

Обратите внимание, что для каждой дополнительной учетной записи требуется собственный файл authorized_keys.

Генерация ключей SSH

Вы можете использовать ssh-keygen для создания новой пары ключей SSH:

ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
cb:3c:a0:39:69:39:ec:35:d5:66:f3:c5:92:99:2f:e1 root@server
The key's randomart image is:
+--[ RSA 2048]----+
|                    |
|                    |
|                    |
| . =               |
| . S = * o     |
| . = = + + = |
| X o = E .    |
| o + . . .       |
| .                  |
+-----------------+

Создание файла authorized_keys

Вставьте необходимые общедоступные ключи SSH в новый локальный файл authorized_keys.

Для SSH через порт 23 (SCP, SFTP, Rsync и Borg Backup) добавьте открытый ключ SSH в формате OpenSSH:

server> cat .ssh/id_rsa.pub >> storagebox_authorized_keys

Если вы преобразовали свой открытый SSH-ключ в формат RFC4716 на предыдущем шаге, также добавьте его:

server> cat .ssh/id_rsa_rfc.pub >> storagebox_authorized_keys

Вы также можете добавить открытый ключ SSH в обоих форматах..

Загрузка authorized_keys

Теперь вам нужно загрузить сгенерированный файл authorized_keys в storage box/учетная запись. Для этого создайте каталог .ssh с правами файла 0700 (rwx——) и создайте файл authorized_keys с общедоступными ключами SSH и правами файла 0600 (rw ——-).

Вы можете сделать это с помощью следующей команды, например:

server> echo -e "mkdir .ssh \n chmod 700 .ssh \n put storagebox_authorized_keys .ssh/authorized_keys \n chmod 600 .ssh/authorized_keys" | sftp <username>@<username>.your-storagebox.de
[email protected]'s password:
Connected to u12345.your-storagebox.de'.
sftp> mkdir .ssh
sftp> chmod 700 .ssh
Changing mode on /.ssh
sftp> put storagebox_authorized_keys .ssh/authorized_keys
Uploading storagebox_authorized_keys to /.ssh/authorized_keys
storagebox_authorized_keys 100% 2916 2.0MB/s 00:00
sftp> chmod 600 .ssh/authorized_keys
Changing mode on /.ssh/authorized_keys

В зависимости от того, какой формат ключа SSH вы загрузили, вы сможете войти в систему без пароля через порт 22 и/или 23:

sftp -P <22 or 23> <username>@<username>.your-storagebox.de
Connected to <username>.your-storagebox.de.
sftp> quit

Предупреждение: команду ssh-copy-id нельзя использовать для загрузки открытого SSH-ключа.