Как настроить ограниченный SFTP-сервер на Ubuntu?

70

Я хотел бы знать, как настроить учетные записи root, sudo, sftp-only, для которых не требуется проверка подлинности открытого ключа при входе в систему. Я также хотел бы знать, как настроить домашнюю страницу sftp-only где они не могут получить доступ к другим каталогам верхнего уровня.

    
задан Yuya Kobayashi 14.02.2014 в 02:29
источник

4 ответа

77
___ answer607898 ___

Шаг 1: установите пакет OpenSSH, если он установлен

sudo apt-get install openssh-server

Шаг 2. Создайте отдельную группу для пользователей SFTP.

nm-connection-editor

Шаг 3: отредактируйте файл OpenSSH server и внесите изменения, как показано ниже. Найдите и прокомментируйте строку ниже.

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.factory-defaults
sudo chmod a-w /etc/ssh/sshd_config.factory-defaults

и добавьте эти строки в конец файла.

sudo -H gedit /etc/ssh/sshd_config

Шаг 4: Перезапустите службу sshd.

sudo service ssh restart

Шаг 5: добавьте пользователя с группой ftpaccess и создайте пароль.

PasswordAuthentication yes

Шаг 6: Изменить разрешение домашней директории.

sudo service ssh restart

Шаг 7: Создайте каталог внутри дома для загрузки и изменения разрешения с помощью группы.

sftp <username>@123.123.1.23

Вот и все.

Обратитесь: Настройка SFTP на ubuntu     

___ qstntxt ___

Я хотел бы знать, как настроить учетные записи root, sudo, sftp-only, для которых не требуется проверка подлинности открытого ключа при входе в систему. Я также хотел бы знать, как настроить домашнюю страницу sftp-only где они не могут получить доступ к другим каталогам верхнего уровня.

    
___ answer420681 ___

Denyhosts - еще один инструмент, помимо тех, о которых упоминал «jtd», который вы, возможно, захотите посмотреть. Он может автоматически блокировать повторные попытки подключения к вашему SSH-серверу. Он доступен для установки в репозитории Ubuntu.

    
___ qstnhdr ___ Как настроить ограниченный SFTP-сервер на Ubuntu? ___ answer937758 ___

Ограничить доступ к пользователю

Здесь мы разрешаем пользователю выполнять передачу файлов, и мы отключим доступ к терминалу.

Для этого добавьте следующие коды внизу файла конфигурации.

sftp -P <port_number_in_Host's_sshd_config_file> <username>@123.123.1.23

Теперь файл откроется и вставьте код.

ssh <username>@123.123.1.23

Замените ssh на свое имя пользователя. Затем сохраните и закройте файл.

Вот и все.

Ссылка: Как использовать SFTP в Ubuntu 16.04

    
___ tag123sftp ___ Протокол передачи файлов SSH ___ tag123server ___ Вопросы, связанные с сервером Ubuntu и пакетами, связанными с сервером. ___ tag123openssh ___ OpenSSH (OpenBSD Secure Shell) представляет собой набор компьютерных программ, обеспечивающих зашифрованные сеансы связи по компьютерной сети с использованием протокола SSH. ___
ответ дан jtd 14.02.2014 в 04:36
источник
43

Шаг 1: установите пакет OpenSSH, если он установлен

sudo apt-get install openssh-server

Шаг 2. Создайте отдельную группу для пользователей SFTP.

sudo addgroup ftpaccess

Шаг 3: отредактируйте файл /etc/ssh/sshd_config и внесите изменения, как показано ниже. Найдите и прокомментируйте строку ниже.

#Subsystem sftp /usr/lib/openssh/sftp-server

и добавьте эти строки в конец файла.

Subsystem sftp internal-sftp
Match group ftpaccess
ChrootDirectory %h
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

Шаг 4: Перезапустите службу sshd.

sudo service ssh restart

Шаг 5: добавьте пользователя с группой ftpaccess и создайте пароль.

sudo adduser paul --ingroup ftpaccess --shell /usr/sbin/nologin

Шаг 6: Изменить разрешение домашней директории.

sudo chown root:root /home/paul

Шаг 7: Создайте каталог внутри дома для загрузки и изменения разрешения с помощью группы.

sudo mkdir /home/paul/www
sudo chown paul:ftpaccess /home/paul/www

Вот и все.

Обратитесь: Настройка SFTP на ubuntu     

ответ дан ytgmuabm 11.04.2015 в 08:57
0

Denyhosts - еще один инструмент, помимо тех, о которых упоминал «jtd», который вы, возможно, захотите посмотреть. Он может автоматически блокировать повторные попытки подключения к вашему SSH-серверу. Он доступен для установки в репозитории Ubuntu.

    
ответ дан firefly2442 14.02.2014 в 04:44
0

Ограничить доступ к пользователю

Здесь мы разрешаем пользователю выполнять передачу файлов, и мы отключим доступ к терминалу.

Для этого добавьте следующие коды внизу файла конфигурации.

$ sudo nano /etc/ssh/sshd_config

Теперь файл откроется и вставьте код.

/etc/ssh/sshd_config

. . .

Match User filemg

ForceCommand internal-sftp

PasswordAuthentication yes

ChrootDirectory /var/sftp

PermitTunnel no

AllowAgentForwarding no

AllowTcpForwarding no

X11Forwarding no

Замените filemg на свое имя пользователя. Затем сохраните и закройте файл.

Вот и все.

Ссылка: Как использовать SFTP в Ubuntu 16.04

    
ответ дан Aimal 19.07.2017 в 18:13