In questo tutorial, spiegherò come configurare SSH per consentire SFTP e impedire l'accesso SSH.
Soluzione:
Bene, SFTP utilizza SSH e per impostazione predefinita gli utenti potranno utilizzare sia SSH che SFTP. Ma se vuoi che gli utenti utilizzino solo SFTP e non consentano l'accesso SSH, OpenSSH lo supporta. Da OpenSSH versione 4.9, puoi modificare sshd_config file come mostrato di seguito:
Come consentire SFTP e non consentire SSH
Passaggio 1 :Modifica il file di configurazione SSH
# vim /etc/sshd_config
Passaggio 2 :Cerca il sottosistema FTP.
Nel caso, se il Sottosistema è già impostato come mostrato di seguito:
Subsystem sftp /usr/lib/openssh/sftp-server
Quindi devi cambiarlo in:
Subsystem sftp internal-sftp
Entrambi server-sftp e sftp interno sono i sottosistemi di SSH, ma internal-sftp è il più preferito. Il motivo è internal-sftp è un sftp in corso server che presenta un vantaggio in termini di prestazioni rispetto a stp-server e inoltre non richiede file di supporto aggiuntivi se utilizzato con CrootDirectory opzione.
Passaggio 3 :aggiungi le righe seguenti
Match group ftp ChrootDirectory /home/%u X11Forwarding no AllowTcpForwarding no ForceCommand internal-sftp
Cerca "Fiammifero ftp gruppo ' riga che dice che qualsiasi utente che desidera utilizzare SFTP deve appartenere al gruppo chiamato 'ftp ' (crea il tuo gruppo, se necessario). Usando anche internal-sftp il sottosistema è importante, perché useremo CrootDirectory opzione.
Nota :assicurati che le righe precedenti siano aggiunte dopo "UsePAM sì ' in sshd_config file.
Passaggio 4 :aggiungi utenti al gruppo FTP.
# vim /etc/group
Cerca il gruppo FTP e aggiungi utenti come mostrato di seguito, ad esempio l'utente "sysadmin '.
ftp:x:113:sysadmin
Potrebbe essere necessario modificare la directory home dell'utente in /
a causa dell'uso di Croot e root dovrebbe essere il proprietario di /home/user .
Passaggio 5 :verifica se le configurazioni sono corrette prima di riavviare il servizio SSH. Questo passaggio è molto importante.
# sshd -t
Se c'è un errore, verrà visualizzato sullo schermo. In caso contrario, non verrà visualizzato alcun output.
Passaggio 6 :riavvia il servizio SSHD
# /etc/init.d/ssh restart
(o)
# /etc/init.d/sshd restart
(o)
# service ssh restart
(o)
# service sshd restart
Passaggio 7 :Prova
Ora qualsiasi utente appartenente a "ftp ' il gruppo potrà utilizzare SFTP ma non potrà accedere tramite SSH.
Nota :I comandi precedenti sono stati eseguiti e testati su Ubuntu 14.04.4 LTS.