Я понимаю, что в Интернете было множество других потоков, разрешающих OpenSSH SFTP-соединения на настраиваемом порту. Я их ударил, не всех, но много. И не смог заставить его работать в моем конкретном случае :)
Вот с чем я боролся:
sshd
экземпляр разрешенНа вершине /etc/ssh/sshd_config
У меня есть:
Port 22
Port 2222
SFTP-сервер настроен с использованием johanmeiring
роль Ansible ansible-sftp
Затем я изменил /etc/ssh/sshd_config
изменить это Match
строка из:
Match Group sftpusers
кому:
Match Group sftpusers LocalPort 2222
в надежде, что пользователи группы sftpusers
воля * только * иметь возможность SFTP-подключения через порт 2222
Это больше /etc/ssh/sshd_config
что я считаю актуальным:
Port 22
Port 2222
...
Subsystem sftp internal-sftp -f AUTH -l VERBOSE
...
Match Group sftpusers LocalPort 2222
ChrootDirectory %h
AllowTCPForwarding no
X11Forwarding no
ForceCommand internal-sftp
PasswordAuthentication no
На самом деле произошло то, что пользователи SFTP смогли подключиться через оба порта 22 и 2222. Что еще хуже, при подключении через порт 22 пользователи SFTP вообще не имеют chrooot (они могут cd
свободно). Всего этого не ожидается.
Как мне достичь chrooted пользователей SFTP, ограниченных портом 2222, на основе OpenSSH, позволяя SSH функционировать нормально?
Спасибо.
Попробуйте добавить другую группу совпадений и запретите доступ к группе.
Match Group sftpusers LocalPort 22
DenyGroups sftpusers
Должно сработать.