Назад | Перейти на главную страницу

Разрешить SFTP и запуск процесса, но запретить ssh для одного пользователя

как сказано в названии, я хочу запретить доступ ssh для пользователя, но разрешить пользователю выполнять java-процесс и получать доступ к SFTP

Как это можно сделать?

Вы можете создать группу под названием sftponly.

Добавьте пользователя в эту группу и настройте ssh

/etc/ssh/sshd_config

Добавлен Conf:

Match Group sftponly
    ChrootDirectory %h
    AllowTCPForwarding no
    X11Forwarding no
    ForceCommand internal-sftp 

Теперь пользователи в этой группе смогут только sftp

Есть небольшая проблема с этой настройкой: chroot из ssh требует, чтобы% h (домашняя переменная) принадлежала root. С помощью этой переменной вы можете сделать это для нескольких пользователей.

так было бы так:

/home/user1   ( root owner )
/home/user1/public_html ( user1 owner )

Не обязательно быть public_html, это может быть любое имя папки ... пример Java

Что ж, простой способ запретить доступ по ssh для большинства вещей - это изменить переменную среды оболочки в своем профиле. Проверить здесь: http://www.cyberciti.biz/faq/how-to-disable-shell-ftp-access-to-newuser/

Если вы хотите, чтобы у них был доступ к узкоспециализированным командам, отметьте http://www.eng.cam.ac.uk/help/jpmg/ssh/authorized_keys_howto.html - вам нужно предоставить им авторизованный ключ (а не пароль) и следовать инструкциям в разделе «Принудительная команда», чтобы при входе в систему всегда выполнялась одна и та же команда, игнорируя все, что они отправляют Это.