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

Разрешить вход root на sftp, а запретить через ssh?

В целях безопасности я разрешаю только фиктивному пользователю входить в систему через SSH на моем сервере CentOS 5.8, для этого я добавил:

AllowUsers dummyaccount

При доступе к моему серверу я затем вхожу в систему с помощью манекена и использую su - чтобы получить привилегии root, это работает отлично.

Теперь я настроил sftp, используя:

Subsystem sftp /usr/libexec/openssh/sftp-server

Когда я создаю ssh-туннель с моим ssh-клиентом и подключаюсь к нему с помощью FileZilla, я могу войти в свою фиктивную учетную запись и попасть в ее корень.

Однако теперь я бы хотел либо получить права root с моей фиктивной учетной записью, когда я использую sftp, чтобы я мог полностью управлять файловой системой с ее помощью, ИЛИ я хотел бы разрешить вход в систему root на sftp, но не на ssh, другими словами, я ' d войдите в ssh с помощью манекена и используйте su - чтобы получить права root, как описано выше, но когда я сделаю туннель ssh, я смогу войти в систему с моим root через sftp.

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

Что ты предлагаешь?

Требовать аутентификацию на основе ключа. Установить PermitRootLogin without-password вариант. Установите ключ, который имеет команду принудительной internal-sftp. Или обновите свой sshd_config с разделом совпадений, чтобы заставить sftp.

Match user root
    ForceCommand internal-sftp  # force SFTP