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

Можно ли разрешить аутентификацию на основе ключей для пользователей sshd_config chroot sftp?

Я использую сервер Ubuntu 12.04.1 LTS (GNU / Linux 3.2.0-30-generic x86_64) с OpenSSH_5.9p1 Debian-5ubuntu1, OpenSSL 1.0.1 14 марта 2012 г.

Я хотел бы настроить chroot для доступа к sftp, используя настройки в / etc / ssh / sshd_config, с аутентификацией на основе ключа.

Я следил за учебником здесь: http://www.thegeekstuff.com/2012/03/chroot-sftp-setup/

Этот учебник помог мне заставить sftp работать с аутентификацией по паролю. Я изменил файл / etc / ssh / sshd_config и скопировал ключи, чтобы попытаться заставить работать аутентификацию на основе ключей, но пока безуспешно.

Соответствующие части моего файла / etc / ssh / sshd_config:

# Change to no to disable tunnelled clear text passwords
PasswordAuthentication yes
# Of course, I'd like to change this to no once key-based auth is working


# Commenting for chroot use
#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem       sftp    internal-sftp

Match Group sftpusers
        ChrootDirectory /sftp/%u
        ForceCommand internal-sftp
        PubkeyAuthentication yes
        AuthorizedKeysFile     %h/.ssh/authorized_keys

Я поместил ключ в /sftp/testuser/incoming/.ssh/authorized_keys и немного поэкспериментировал, поместив его в разные каталоги. Я удостоверился, что права на файл authorized_keys равны 600, и что он принадлежит testuser:

-rw------- 1 testuser sftpusers  616 Sep 21 09:20 authorized_keys

Вот запись в / etc / passwd для тестового пользователя:

testuser:x:1008:1010::/incoming:/usr/lib/openssh/sftp-server

Поместите свои ключи вне chroot (в любом случае они используются до chroot). Например, поместите свои ключи в /etc/ssh-pool/user.pub и измените конфигурацию:

AuthorizedKeysFile /etc/ssh-pool/%u.pub