могу я настроить
Я не хочу прямо сейчас давать пользователю чистую учетную запись ssh.
Любой другой безопасный способ загрузки, скачивания и удаления файла тоже хорош. nginx имеется не apache2.
попробуйте использовать scponly
Редактировать:
Пример настройки:
1) создать учетную запись для использования scponly
:
sudo useradd joe
2) изменить оболочку по умолчанию для учетной записи:
sudo chsh joe
ответить с /usr/bin/scponly
, (удостоверься что /usr/bin/scponly
в /etc/shells
)
3) вы можете изменить домашний каталог Джо на /my/web/site/dir
в /etc/passwd
sudo vim /etc/passwd
4) изменить разрешения:
sudo chgrp -R joe /my/web/site/dir
sudo chmod -R g+w /my/web/site/dir
5) Если вы используете AllowUsers
директива в /etc/ssh/sshd_config
добавить joe в список пользователей, которые могут войти в систему.
6) перезапустите ssh:
sudo /etc/init.d/ssh restart
7) тест с другого хоста:
scp web_site_stuff.html joe@site.com:
наконец я использую Ограничение доступа с помощью SFTP-тюрем в Debian и Ubuntu
Я полагаю, что вы можете использовать rssh для настройки ограниченной оболочки для предоставления доступа через sftp, но не через ssh. Я также считаю, что вы можете «заблокировать» пользователя для определенных папок с помощью chroot. Вот две ссылки, которые объясняют это дальше:
Как: ограничить пользователей SCP и SFTP и заблокировать доступ к оболочке SSH с помощью rssh
Linux Настройте rssh Chroot Jail для блокировки пользователей только их домашними каталогами
Обратите внимание, что я сам никогда этого не делал.
Изменить: как указывает Zoredache, это может быть лучшим решением напрямую выполнить chroot в конфигурации sshd, вместо того, чтобы делать это в конфигурации rssh, как предлагает ссылка выше.
Создайте один домашний каталог для нового пользователя, затем создайте символическую ссылку на два других каталога. в этом домашнем каталоге и дайте этим двум папкам соответствующее разрешение.
в конце я использовал чистый FTPd с поддержкой TLS