Можно ли предоставить sftp доступ пользователю без предоставления ему доступа ssh?

Можно ли предоставить sftp доступ пользователю без предоставления ему доступа ssh?

4
задан 19.05.2020, 09:00

3 ответа

Установите для последнего параметра файла /etc/passwd (в строке пользователя) значение /usr/lib/openssh/sftp-server (или любого используемого вами сервера sftp). Это сделает так, чтобы оболочкой входа для пользователя был sftp-сервер, и это все, что он может использовать. Для этого требуется меньше настроек, чем для другого ответа, и он подходит точно к сути, хотя опции, разрешающей scp позже, не существует.

0
ответ дан 19.05.2020, 09:01

Ну, rssh - это ограниченная оболочка, предоставляющая доступ по sftp, но не доступ по ssh.

sudo apt-get install rssh
sudo chsh -s /usr/bin/rssh $username

Возможно, вам придется

sudo bash -c "echo '/usr/bin/rssh' >> /etc/shells"

, чтобы сделать его «действительной» оболочкой.

Обновление 9-13-2012 для Ubuntu 12.04

В файле /etc/rssh.conf прокомментированы различные виды доступа; поэтому для sftp раскомментируйте строку # 10, "#allowsftp".

sudo -e /etc/rssh.conf

Измените

#allowsftp

на

allowsftp

Сохранить.

0
ответ дан 19.05.2020, 09:02
  • 1
    I' ve просто обновил это сообщение для 11,10. Двоичное местоположение переместилось. Имейте это в виду если you' ре с помощью этого на более старых версиях Ubuntu (Извините, я don' t знают, когда это произошло). – Jonesome 19.05.2020, 09:02

Иногда полезно установить umask для клиента ftp. Для этого создайте простой скрипт /usr/lib/openssh/sftp-server-go.sh

#!/bin/bash
/usr/lib/openssh/sftp-server -u 0007

и используйте его в /etc/passwd.

0
ответ дан 19.05.2020, 09:02

Теги

Похожие вопросы