Как я могу разрешить доступ к SSH и SFTP?

11

Я начал со следующей статьи, чтобы настроить SFTP на сервере Ubuntu: http://blog.srmklive.com/2013/04/24/how-to-setup-sftp-server-ftp-over-ssh-in-ubuntu/ , Если я буду следовать этим инструкциям, я смогу соединиться с SFTP, но я больше не смог соединиться с SSH из терминала:

This service allows sftp connections only.
Connection to 10.0.0.130 closed.

Вот изменения, которые я сделал в sshd_config:

Subsystem sftp internal-sftp -f AUTH -1 VERBOSE

AllowGroups sftpusers sftp sshusers

Match Group sftpusers
ChrootDirectory %h
AllowTCPForwarding yes
ForceCommand internal-sftp

X11Forwarding no

Пользователь в вопросе, jcoulson, в обоих sftpusersи sshusersгруппах.

Есть намеки? Любая дополнительная информация вам нужна? Спасибо!

mrcoulson
источник

Ответы:

13

Вам не нужно вносить какие-либо изменения в установку ssh по умолчанию, чтобы можно было использовать как sftp, так и ssh. Все sftpесть, это средство передачи файлов ssh.

Добей
источник
Ага. Я только что обнаружил это сам. Часы разочарования потрачены впустую! Теперь следите за моим следующим вопросом на этом сайте: как я могу ограничить пользователя SFTP только его домашним каталогом? Спасибо!
mrcoulson
@mrcoulson директива ChrootDirectory должна сделать это. Вы решили эту проблему?
Хавьер Констанцо,
11

Эта настройка

Match Group sftpusers
...
ForceCommand internal-sftp

ограничивает доступ к sftp для пользователей в группе sftpusers. Либо удалите своего пользователя из sftpusersгруппы, либо удалите этот параметр принудительной команды.

сокольничий
источник
2
+1. Это должен быть принятый ответ.
Dr_
0

Я использовал аналогичный метод с той же ошибкой и обнаружил, что использовать sshfs для подключения / монтирования общего ресурса sftp на сервере. Filezilla также подключается, но не может войти с помощью команды терминала ssh. http://www.fullybaked.co.uk/articles/chroot-ssh-ftp-users-to-home-directory был учебник, который я использовал, чтобы сделать это. Я также должен был создать домашний каталог вручную, так как команда useradd не рекомендуется под Ubuntu.

sshfs user@server:/folder /home/user/folder-to-mount-in/ -p 22

и размонтировать

fusermount -u /home/user/folder-to-mount-in/

эта процедура с автоматическим сценарием, аутентификацией по ключу rsa, cron и rsync помогла мне спланировать автоматическое резервное копирование.

Николас Родриг
источник
0

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

tcheyck0
источник