Samba est une solution open source qui permet aux utilisateurs de configurer des partages de fichiers et d'impression rapides et sécurisés. Dans cet article, je couvrirai comment configurer Samba avec le stockage en bloc de Vultr sur Debian 9. Cela inclut les quotas optionnels, l'authentification et les instructions pour y accéder via votre connexion à domicile.
Cet article fonctionnera sur n'importe quel niveau de la ligne d'instance de Vultr.
Partie 1: Préparer votre serveur
Il est important que nous installions d'abord les dépendances de Samba, ainsi que la mise en place et le stockage du bloc. Si vous ne savez pas ce qu'est le stockage en bloc de Vultr, il s'agit d'une solution de stockage évolutive basée sur SSD hautement disponible qui se monte sur un VPS Vultr. Plus d'informations sur le stockage de blocs sont disponibles dans cette doc .
La première chose que vous devez faire est de vous connecter via SSH à votre VPS Vultr ou via KVM. L'utilisation de SSH est recommandée, car l'utilisation de PuTTY ou d'une version en ligne de commande de SSH vous permet de copier et coller des commandes.
Une fois connecté, si vous n'utilisez pas l'utilisateur root, passez à root.
su -
Si votre stockage de blocs est déjà monté et préparé, passez à la section B.
Remarque: l'article actuel sur le stockage en bloc de Vultr ne couvre pas l'activation des quotas. Si c'est quelque chose que vous aimeriez faire, rendez-vous à la section A.1.
Section A: Préparer votre stockage en bloc
Maintenant, préparons votre stockage en bloc. Dans cet article, seules les instructions de base sont fournies sur la configuration de ce paramètre, donc si vous souhaitez des détails supplémentaires, veuillez utiliser le lien écrit précédemment dans la partie 1.
Commençons par créer les partitions nécessaires avec fdisk.
fdisk /dev/vdb
Dans fdisk, entrez:
n (enter)
p (enter)
1 (enter)
(enter)
(enter)
w (enter)
q (enter)
Maintenant, formatez-le en EXT4:
mkfs.ext4 /dev/vdb1
Notre variateur est maintenant prêt à être monté. À l'étape suivante, créez un répertoire à l'emplacement de votre choix. Cet article utilisera l'exemple de répertoire /var/blockstorage, mais vous êtes libre de modifier cet emplacement.
mkdir -p /var/blockstorage
mount /dev/vdb1 /var/blockstorage
Avant d'ajouter la ligne /etc/fstab, veuillez exécuter la commande suivante:
cat /etc/fstab | grep "UUID="
Si le nom du lecteur change (par exemple /dev/vdbest renommé /dev/sdb), l'UUID s'assurera que nous montons le bon lecteur.
Copiez la pièce après le =dans l'espace avant la barre oblique. Il devrait ressembler à `8db639c7-d77d-49a3-a4b0-c9d2916ba873 '.
Ensuite, répertoriez vos disques par UUID et enregistrez-le dans une variable pour plus tard:
CURRENT_UUID='UUID_YOU_COPIED'
NEW_UUID=`ls /dev/disks/by-uuid/ | grep -v "$CURRENT_UUID"`
Enfin, ajoutons l'entrée /etc/fstabpour nous assurer qu'elle persiste pendant les cycles d'alimentation.
echo "UUID=$NEW_UUID /var/blockstorage ext4 defaults,usrquota,grpquota,noatime 0 0" >> /etc/fstab
C'est tout pour la configuration du stockage en bloc! Rendez-vous à la partie 2.
Section A.1: Activation des quotas pour le stockage en bloc précédemment configuré
C'est relativement simple, alors ouvrez votre éditeur de texte préféré /etc/fstab. Ça devrait ressembler à ça:

Accédez à la ligne avec /dev/vdb1et ajoutez usrquota,grpquotaaprès defaults,. Votre fichier devrait maintenant ressembler à ceci:

Sauvegarder et quitter. Pour appliquer vos modifications, nous devons remonter le lecteur.
mount -o remount /dev/vdb1
Passons maintenant à la section B ..
Section B: Installation de Samba
La première chose que vous voudrez faire est de mettre à jour les sources de vos packages.
apt-get update -y
Donnez-lui quelques instants, et quand c'est fait, passez à la commande suivante. Maintenant, installons Samba et toutes les dépendances.
apt-get install samba quota firewalld -y
C'est tout pour installer Samba. Bon travail jusqu'à présent, vous faites du bon travail! Passons à la partie 2, où nous configurerons Samba selon vos besoins.
Partie 2: Configuration de Samba
C'est probablement l'étape la plus difficile, alors accrochez-vous! Actuellement, cet article prend en charge trois options de configuration différentes. Ils sont les suivants: un partage public auquel tout utilisateur peut accéder (A.1); un partage privé avec des autorisations utilisateur (A.2); un partage privé avec des autorisations utilisateur et des quotas (A.3).
Avant de passer à la section appropriée, il y a quelques choses que nous devons changer en ce /etc/samba/smb.confqui concerne chaque section.
Ouvrez votre éditeur de texte préféré et trouvez la ligne avec # wins support = no. Décommentez la ligne (supprimez le #symbole) et remplacez «non» par «oui». Enregistrez le fichier.
À ce stade, vous pouvez vous diriger vers la section appropriée.
Section A.1: Partage Samba public
Cette sous-section couvrira la configuration d'un partage Samba public. C'est relativement facile, car nous n'avons pas besoin d'appliquer d'autorisations spéciales ou d'options de configuration.
Ajoutez ce qui suit à votre /etc/samba/smb.conffichier de configuration:
[Public Share]
comment = Publicly accessible share that allows ANY user to access it
path = /var/blockstorage
read only = no
guest ok = yes
Veuillez noter: ce partage est accessible à TOUS qui peuvent se connecter à votre serveur Samba. Il est possible de le sécuriser en créant un seul utilisateur que vous partagerez avec toute personne ayant besoin d'accéder au partage. Les étapes pour cela sont disponibles dans la section A.2.
Ensuite, redémarrez Samba:
systemctl restart smbd
Section A.2: Partage privé avec autorisations
Samba a une pléthore d'options en termes d'authentification, car Samba reconnaît le homepréfixe, il s'authentifiera automatiquement sur votre système et avec son propre système d'authentification. De plus, il n'est pas nécessaire de spécifier un chemin, car Samba le lira dans l' /etc/passwdentrée de l'utilisateur .
Ajoutez ce qui suit à votre /etc/samba/smb.conffichier de configuration.
[homes]
browsable = no
writable = yes
read only = no
Pour configurer un utilisateur, nous devons d'abord créer un compte Linux distinct pour lui. La commande suivante créera un utilisateur, sans accès shell ou SFTP:
NEW_USER="Username of the user you'd like to create"
useradd -d /var/blockstorage/$NEW_USER -s /usr/sbin/nologin $NEW_USER
Ensuite, définissez un mot de passe pour cela:
passwd $NEW_USER
Enfin, nous devons activer l'utilisateur dans Samba. Entrez le même mot de passe que vous l'avez fait plus tôt après avoir entré la première smbpasswdcommande. La deuxième commande permettra à l'utilisateur.
smbpasswd -a $NEW_USER
smbpasswd -e $NEW_USER
Répétez cette section pour créer de nouveaux utilisateurs si nécessaire.
Section A.3: Partage privé avec autorisations et quotas
Les étapes sont les mêmes que celles de A.2, veuillez donc suivre ces étapes puis revenir ici. La configuration des quotas avec Samba est similaire à la configuration des quotas pour l'utilisateur Linux standard.
Nous n'avons pas encore initialisé notre répertoire monté pour les quotas, alors faisons-le maintenant.
quotacheck -cug /var/blockstorage
Ce devrait être cela pour activer les quotas. En supposant que vous avez déjà créé certains utilisateurs, nous pouvons maintenant leur donner des limites de disque.
Nous devons calculer la quantité d'espace disque à allouer, mais comme les quotas sont mesurés en blocs, voici l'équation pour convertir Mo en blocs:
mb to allocate * 1024 = number of blocks
Example: 1024MB * 1024 = 1048576 blocks
Maintenant que vous avez une idée de la quantité de blocs que vous souhaitez allouer, fixons la limite.
edquota $NEW_USER
Il ressemblera à ceci:

Passez au premier hardpassage de la blocksportion et passez au nombre (probablement 0) en dessous. Remplacez-le par le nombre de blocs que vous avez calculé précédemment.
Sauvegarder et quitter.
Cela devrait être le cas pour la mise en place de quotas; n'hésitez pas à répéter cette section au besoin.
Section B: Autoriser les connexions externes à partir de votre connexion
De toute évidence, pour le moment, le partage Samba n'est pas accessible via Internet pour le moment car le pare-feu bloque les ports qu'il utilise.
Comme nous avons installé FirewallD plus tôt, l'ouverture des ports est très simple. Exécutez simplement l'ensemble de commandes suivant pour ouvrir Samba.
firewall-cmd --permanent --add-port=139/tcp
firewall-cmd --permanent --add-port=445/tcp
firewall-cmd --permanent --add-port=137/udp
firewall-cmd --permanent --add-port=138/udp
systemctl restart firewalld
Et voilà. Vous pouvez désormais accéder à votre partage Samba de n'importe où.
Conclusion
Dans cet article, nous avons expliqué comment configurer Samba avec le stockage en bloc de Vultr sur Debian 9. C'est une solution fiable et rapide et vous pouvez facilement augmenter la taille de votre stockage en bloc à tout moment (vous devrez cependant redémarrer!). parfait pour partager des photos et des médias avec votre famille, vos amis et entre autres, et il est facile à entretenir.
Bon piratage!