SFTP Server Chroot Configuration | How to Setup Chroot SFTP in Linux
Table des matières:
- Création d'un groupe SFTP
- Ajout d'utilisateurs au groupe SFTP
- Configuration de SSH
- Test de la configuration
- Conclusion
Dans ce didacticiel, nous expliquerons comment configurer un environnement SFTP Chroot Jail qui restreindra les utilisateurs à leurs répertoires personnels. Les utilisateurs n'auront qu'un accès SFTP, l'accès SSH sera désactivé. Ces instructions devraient fonctionner pour toute distribution Linux moderne, y compris Ubuntu, CentOS, Debian et Fedora.
Création d'un groupe SFTP
Au lieu de configurer le serveur OpenSSH pour chaque utilisateur individuellement, nous créerons un nouveau groupe et ajouterons tous nos utilisateurs chrootés à ce groupe.
Exécutez la commande
groupadd
suivante pour créer le groupe d'utilisateurs
sftponly
:
sudo groupadd sftponly
Vous pouvez nommer le groupe comme vous le souhaitez.
Ajout d'utilisateurs au groupe SFTP
L'étape suivante consiste à ajouter les utilisateurs que vous souhaitez restreindre au groupe
sftponly
.
S'il s'agit d'une nouvelle configuration et que l'utilisateur n'existe pas, vous pouvez créer un nouveau compte utilisateur en tapant:
sudo useradd -g sftponly -s /bin/false -m -d /home/username username
- L'option
-g sftponlyajoutera l'utilisateur au groupe sftponly. L'option-s /bin/falsedéfinit le shell de connexion de l'utilisateur. En définissant le shell de connexion sur/bin/falsel'utilisateur ne pourra pas se connecter au serveur via SSH. Les options-m -d /home/usernameindiquent à useradd de créer le répertoire personnel de l'utilisateur.
Définissez un mot de passe fort pour l'utilisateur nouvellement créé:
sudo passwd username
Sinon, si l'utilisateur que vous souhaitez restreindre existe déjà, ajoutez l'utilisateur au groupe
sftponly
et changez le shell de l'utilisateur:
sudo usermod -G sftponly -s /bin/false username2
Le répertoire de base de l'utilisateur doit appartenir à root et disposer de
755
autorisations:
sudo chown root: /home/username
sudo chmod 755 /home/username
Étant donné que les répertoires personnels des utilisateurs appartiennent à l'utilisateur racine, ces utilisateurs ne pourront pas créer de fichiers et de répertoires dans leurs répertoires personnels. S'il n'y a aucun répertoire dans la maison de l'utilisateur, vous devrez créer de nouveaux répertoires auxquels l'utilisateur aura un accès complet. Par exemple, vous pouvez créer les répertoires suivants:
sudo mkdir /home/username/{public_html, uploads}
sudo chmod 755 /home/username/{public_html, uploads}
sudo chown username:sftponly /home/username/{public_html, uploads}
Si une application Web utilise le répertoire
public_html
l'utilisateur comme racine du document, ces modifications peuvent entraîner des problèmes d'autorisations. Par exemple, si vous exécutez WordPress, vous devrez créer un pool PHP qui s'exécutera en tant qu'utilisateur propriétaire des fichiers et ajouter le serveur
sftponly
groupe
sftponly
.
Configuration de SSH
SFTP est un sous-système de SSH et prend en charge tous les mécanismes d'authentification SSH.
Ouvrez le fichier de configuration SSH
/etc/ssh/sshd_config
avec votre éditeur de texte:
sudo nano /etc/ssh/sshd_config
Recherchez la ligne commençant par
Subsystem sftp
, généralement à la fin du fichier. Si la ligne commence par un hachage
#
supprimez le hachage
#
et modifiez-le pour qu'il ressemble à ceci:
Subsystem sftp internal-sftp
Vers la fin du fichier, le bloc de paramètres suivant:
Match Group sftponly ChrootDirectory %h ForceCommand internal-sftp AllowTcpForwarding no X11Forwarding no
La directive
ChrootDirectory
spécifie le chemin d'accès au répertoire chroot.
%h
signifie le répertoire personnel de l'utilisateur. Ce répertoire doit appartenir à l'utilisateur root et ne doit être accessible en écriture à aucun autre utilisateur ou groupe.
Soyez extrêmement prudent lorsque vous modifiez le fichier de configuration SSH. Une configuration incorrecte peut entraîner l'échec du démarrage du service SSH.
Une fois que vous avez terminé, enregistrez le fichier et redémarrez le service SSH pour appliquer les modifications:
sudo systemctl restart ssh
Dans CentOS et Fedora, le service ssh est nommé
sshd
:
Test de la configuration
Maintenant que vous avez configuré le chroot SFTP, vous pouvez essayer de vous connecter à la machine distante via SFTP en utilisant les informations d'identification de l'utilisateur chrooté. Dans la plupart des cas, vous utiliserez un client SFTP de bureau comme FileZilla mais dans cet exemple, nous utiliserons la commande sftp.
Ouvrez une connexion SFTP à l'aide de la commande sftp suivie du nom d'utilisateur du serveur distant et de l'adresse IP ou du nom de domaine du serveur:
sftp [email protected]
Vous serez invité à saisir le mot de passe utilisateur. Une fois connecté, le serveur distant affichera un message de confirmation et l'invite
sftp>
:
[email protected]'s password: sftp>
Exécutez la commande
pwd
, comme indiqué ci-dessous, et si tout fonctionne comme prévu, la commande devrait retourner
/
.
sftp> pwd Remote working directory: /
Vous pouvez également répertorier les fichiers et répertoires distants à l'aide de la commande
ls
et vous devriez voir les répertoires que nous avons créés précédemment:
Conclusion
Dans ce didacticiel, vous avez appris à configurer un environnement SFTP Chroot Jail sur votre serveur Linux et à restreindre l'accès des utilisateurs à leur répertoire personnel.
Par défaut, SSH écoute sur le port 22. La modification du port SSH par défaut ajoute une couche de sécurité supplémentaire à votre serveur en réduisant le risque d'attaques automatisées. Vous pouvez également configurer une authentification basée sur une clé SSH et vous connecter au serveur sans entrer de mot de passe.
ssh sftp securityUn homme de l'Oregon est condamné à quatre ans de prison Un homme de l'Oregon a été condamné à quatre ans de prison pour avoir vendu des logiciels contrefaits sur eBay, à des vols d'identité aggravés et à des fraudes postales, a annoncé le département américain de la Justice.
Jeremiah Joseph Mondello, 23 ans , Oregon, a été condamné mercredi soir dans la cour de district des États-Unis pour le district de l'Oregon. La juge Ann Aiken a condamné Mondello à deux ans de prison pour vol d'identité, plus deux autres années pour violation de droit d'auteur et fraude postale. Elle lui a également ordonné d'abandonner plus de 225 000 dollars des bénéfices de son opération sur eBay et de servir 450 heures de service communautaire après sa libération de prison.
Un homme de Houston est condamné à un an de prison pour avoir piraté le réseau de son ancien employeur. L'administrateur de la base de données d'un fournisseur d'électricité à Houston a été condamné mardi à un an de prison pour piratage informatique dans le réseau informatique de son ancien employeur, a déclaré le 11 novembre à Steven Jinwoo Kim, 40 ans, de Houston. un compte d'accès intentionnel à un ordinateur protégé sans autorisation et causant des dommages imprudents. Kim travaillait chez G
En plus de la prison, le juge Vanessa Gilmore Texas a ordonné à Kim de payer 100 000 $ US en restitution à Gexa Energy.
Comment configurer, configurer, utiliser le contrôle parental dans Windows 7
Apprenez comment activer, désactiver, configurer et utiliser la fonction de contrôle parental dans Windows 7 pour surveiller et contrôler les activités Internet des enfants.







