Comment configurer un serveur SFTP restreint sur Ubuntu?

74

Je voudrais savoir comment configurer les comptes utilisateur root, sudo, sftp-only qui ne nécessiteront pas une authentification par clé publique lors de la connexion. Je voudrais également savoir comment configurer la maison des utilisateurs sftp-only les répertoires où ils ne peuvent pas accéder aux autres répertoires de niveau supérieur.

    
posée Yuya Kobayashi 14.02.2014 - 02:29
la source

4 réponses

81
___ qstnhdr ___ Comment configurer un serveur SFTP restreint sur Ubuntu? ___ qstntxt ___

Je voudrais savoir comment configurer les comptes utilisateur root, sudo, sftp-only qui ne nécessiteront pas une authentification par clé publique lors de la connexion. Je voudrais également savoir comment configurer la maison des utilisateurs sftp-only les répertoires où ils ne peuvent pas accéder aux autres répertoires de niveau supérieur.

    
___ answer937758 ___

Limiter l’accès à l’utilisateur

Ici, nous autoriserons uniquement l’utilisateur à effectuer le transfert de fichiers et nous désactiverons l’accès au terminal.

Pour cela, ajoutez les codes suivants au bas du fichier de configuration.

sudo apt-get install openssh-server

Maintenant, le fichier s'ouvre et colle le code.

nm-connection-editor

Remplacez OpenSSH server par votre nom d'utilisateur. Ensuite, enregistrez et fermez le fichier.

C'est ça.

Référence: Comment utiliser SFTP dans Ubuntu 16.04

    
___ answer420681 ___

Denyhosts est un autre outil que ceux mentionnés par "jtd" que vous pourriez souhaiter consulter. Il peut bloquer automatiquement les tentatives de connexion répétées sur votre serveur SSH. Il est disponible pour être installé dans les dépôts Ubuntu.

    
___ answer607898 ___

Étape 1: Installez le package OpenSSH s'il n'est pas installé

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.factory-defaults
sudo chmod a-w /etc/ssh/sshd_config.factory-defaults

Étape 2: Créez un groupe distinct pour les utilisateurs SFTP.

sudo -H gedit /etc/ssh/sshd_config

Étape 3: Modifiez le fichier ssh et apportez les modifications ci-dessous. Trouvez et commentez la ligne ci-dessous.

sudo service ssh restart

et ajoutez ces lignes à la fin du fichier.

PasswordAuthentication yes

Étape 4: redémarrer le service sshd.

sudo service ssh restart

Étape 5: Ajouter un utilisateur avec le groupe ftpaccess et créer un mot de passe.

sftp <username>@123.123.1.23

Étape 6: Modifiez les autorisations du répertoire personnel.

sftp -P <port_number_in_Host's_sshd_config_file> <username>@123.123.1.23

Étape 7: Créez un répertoire à l’intérieur de la maison pour le téléchargement et la modification des autorisations avec le groupe.

ssh <username>@123.123.1.23

C'est ça.

Référer: Configurer SFTP sur Ubuntu

    
___
réponse donnée jtd 14.02.2014 - 04:36
la source
44

Étape 1: Installez le package OpenSSH s'il n'est pas installé

sudo apt-get install openssh-server

Étape 2: Créez un groupe distinct pour les utilisateurs SFTP.

sudo addgroup ftpaccess

Étape 3: Modifiez le fichier /etc/ssh/sshd_config et apportez les modifications ci-dessous. Trouvez et commentez la ligne ci-dessous.

#Subsystem sftp /usr/lib/openssh/sftp-server

et ajoutez ces lignes à la fin du fichier.

Subsystem sftp internal-sftp
Match group ftpaccess
ChrootDirectory %h
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

Étape 4: redémarrer le service sshd.

sudo service ssh restart

Étape 5: Ajouter un utilisateur avec le groupe ftpaccess et créer un mot de passe.

sudo adduser paul --ingroup ftpaccess --shell /usr/sbin/nologin

Étape 6: Modifiez les autorisations du répertoire personnel.

sudo chown root:root /home/paul

Étape 7: Créez un répertoire à l’intérieur de la maison pour le téléchargement et la modification des autorisations avec le groupe.

sudo mkdir /home/paul/www
sudo chown paul:ftpaccess /home/paul/www

C'est ça.

Référer: Configurer SFTP sur Ubuntu

    
réponse donnée ytgmuabm 11.04.2015 - 08:57
la source
0

Denyhosts est un autre outil que ceux mentionnés par "jtd" que vous pourriez souhaiter consulter. Il peut bloquer automatiquement les tentatives de connexion répétées sur votre serveur SSH. Il est disponible pour être installé dans les dépôts Ubuntu.

    
réponse donnée firefly2442 14.02.2014 - 04:44
la source
0

Limiter l’accès à l’utilisateur

Ici, nous autoriserons uniquement l’utilisateur à effectuer le transfert de fichiers et nous désactiverons l’accès au terminal.

Pour cela, ajoutez les codes suivants au bas du fichier de configuration.

$ sudo nano /etc/ssh/sshd_config

Maintenant, le fichier s'ouvre et colle le code.

/etc/ssh/sshd_config

. . .

Match User filemg

ForceCommand internal-sftp

PasswordAuthentication yes

ChrootDirectory /var/sftp

PermitTunnel no

AllowAgentForwarding no

AllowTcpForwarding no

X11Forwarding no

Remplacez filemg par votre nom d'utilisateur. Ensuite, enregistrez et fermez le fichier.

C'est ça.

Référence: Comment utiliser SFTP dans Ubuntu 16.04

    
réponse donnée Aimal 19.07.2017 - 18:13
la source

Lire d'autres questions sur les étiquettes