Jak mogę zezwolić na dostęp zarówno do SSH, jak i SFTP?

11

Zacząłem od następującego artykułu, aby skonfigurować SFTP na Ubuntu Server: http://blog.srmklive.com/2013/04/24/how-to-setup-sftp-server-ftp-over-ssh-in-ubuntu/ . Jeśli zastosuję się do tych instrukcji, mogę połączyć się za pomocą SFTP, ale nie mogę już połączyć się z SSH z terminala:

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

Oto zmiany, które wprowadziłem w 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

Użytkownik w pytaniu jcoulson, jest w obu sftpusersi sshusersgrup.

Jakieś wskazówki? Potrzebujesz dalszych informacji? Dzięki!

mrcoulson
źródło

Odpowiedzi:

13

Nie trzeba wprowadzać żadnych zmian w domyślnej instalacji ssh, aby móc używać zarówno sftp, jak i ssh. Wszystko sftpjest sposobem na transfer plików ssh.

dobey
źródło
Tak. Właśnie to odkryłem. Zmarnowane godziny frustracji! Teraz uważaj na moje następne pytanie na tej stronie: jak ograniczyć użytkownika SFTP tylko do jego katalogu domowego? Dzięki!
mrcoulson
@mrcoulson powinna to zrobić dyrektywa ChrootDirectory. Czy rozwiązałeś ten problem?
Javier Constanzo
11

To ustawienie

Match Group sftpusers
...
ForceCommand internal-sftp

ogranicza dostęp do sftp dla użytkowników w grupie sftpusers. Usuń użytkownika z sftpusersgrupy lub usuń tę opcję polecenia.

sokolnik
źródło
2
+1. To powinna być zaakceptowana odpowiedź.
dr_
0

Użyłem podobnej metody z tym samym błędem i odkryłem, że używam sshfs do łączenia / montowania udziału sftp na serwerze. Filezilla łączy się, ale nie może się połączyć z poleceniem terminalu ssh. http://www.fullybaked.co.uk/articles/chroot-ssh-ftp-users-to-home-directory był tutorialem, którego użyłem, aby to zrobić. Musiałem też ręcznie utworzyć katalog domowy, ponieważ polecenie useradd nie jest zalecane w Ubuntu.

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

i odmontować

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

ta procedura ze zautomatyzowanym skryptem, uwierzytelnianiem klucza rsa, cron i rsync pomogła mi zaplanować automatyczne tworzenie kopii zapasowych.

Nicolas Rodrigue
źródło
0

Rozwiązałem bardzo podobny problem, uważając, że jest on wyłączny: albo chcesz ssh, albo sftp. Stąd usunięcie mojego głównego użytkownika z grupy sftp i pozostawienie tylko moich gości gości jako członków tej grupy sftp, przywróciło ssh ponownie mojemu głównemu użytkownikowi.

tcheyck0
źródło