Запретить пользователю Linux подключаться к WinSCP
Как я могу помешать пользователю войти в систему на Linux с WinSCP?
Я настроил пользователя таким образом, чтобы при входе в систему через Putty ему предоставлялся интерактивный CLI (с использованием Python), а не оболочка bash.
2 ответа
В вашем sshd_config
Найдите строку, которая выглядит следующим образом:
Subsystem sftp /usr/lib/openssh/sftp-server
Удалить или закомментировать строку с префиксом #:
# Subsystem sftp /usr/lib/openssh/sftp-server
Сохраните и закройте файл. Перезапустите службу sshd:
# /etc/init.d/sshd restart
если это не работает, то
заменить:
Subsystem sftp /usr/lib/openssh/sftp-server
с:
Subsystem sftp /bin/false
Это не имеет смысла.
Если вы разрешаете оболочке доступ к серверу, вы даете пользователю возможность делать (почти) все, что он / она хочет. Блокировка WinSCP не поможет, и в любом случае это не легко.
Вы можете отключить отображение подсистемы "sftp", как показано в ответе @Dimi. Но пользователь может легко обойти это, указав полный путь к sftp-server
бинарный в настройках сеанса WinSCP.
Даже если вы сделаете какие-либо меры предосторожности, чтобы запретить пользователю запускать sftp-server
двоичный, пользователь все еще может вернуться к протоколу SCP.
Даже если вы заблокируете scp
Кроме того, пользователь может изменять файлы другими методами.
Вы должны лучше объяснить нам, каково ваше намерение, чтобы получить лучшие ответы.