120 lines
3.6 KiB
Markdown
120 lines
3.6 KiB
Markdown
## Installer le serveur Samba
|
|
```bash
|
|
sudo yum install samba
|
|
```
|
|
|
|
## Paramétrer
|
|
Samba utilise la configuration présente dans le fichier `/etc/samba.smb.conf`.
|
|
A chaque modification il sera nécessaire de redémarrer le service Samba pour que les modifications soient prises en compte :
|
|
|
|
```bash
|
|
sudo service smb restart
|
|
```
|
|
|
|
### Configuration générale
|
|
Ci-dessous, un exemple de configuration de paramétrage du service, de manière globale.
|
|
```ini
|
|
[global]
|
|
workgroup = workgroup
|
|
netbios name = srv05
|
|
server string = serveur $h (Samba %v, Fedora)
|
|
log file = /var/log/samba/log.%m
|
|
max log size = 50
|
|
hide files = /lost+found/
|
|
dns proxy = no
|
|
security = USER
|
|
```
|
|
|
|
L'option `security = USER` impose deux choses que nous allons traiter ci-dessous :
|
|
1. avoir un compte Linux
|
|
1. avoir un compte Samba
|
|
Les utilisateurs des dossiers partagés auront un groupe commun : `sambausers`
|
|
|
|
<u>Créer un groupe</u>
|
|
|
|
Dans cet exemple, je créé un groupe nommé `sambausers`.
|
|
```
|
|
sudo groupadd sambausers
|
|
```
|
|
|
|
<u>Créer un compte Linux</u>
|
|
|
|
On peut créer un compte utilisateur qui n'a pas besoin ni de se connecter à un shell, ni avoir un dossier de travail personnel. Prenons l'exemple de `fanny` :
|
|
```
|
|
sudo useradd --s /bin/false -d /dev/null -g sambausers fanny
|
|
```
|
|
|
|
On remarquera que le shell se nomme `/bin/false` et le dossier personnel pointe vers `dev/null`.
|
|
|
|
<u>Ajouter un utilisateur à un groupe</u>
|
|
|
|
Si l'utilisateur `Jean` a déjà un compte Linux, on pourra lui ajouter le groupe `sambausers` grâce à la commande `usermod`.
|
|
```
|
|
sudo usermod -aG sambausers jean
|
|
```
|
|
|
|
<u>Création d'un utilisateur Samba</u>
|
|
|
|
Avec l'option `USER`, les utilisateurs Linux doivent avoir un compte Samba. On utilise la commande `pdbedit`.
|
|
```
|
|
sudo pdbedit -a jean
|
|
```
|
|
|
|
On peut également utiliser la commande `smbpasswd` pour gérer uniquement les mots de passe. Par exemple :
|
|
```
|
|
sudo smbpasswd -a jean
|
|
sudo smbpasswd -e jean
|
|
```
|
|
|
|
### Configuration spécifique : partage de dossier
|
|
Pour créer un dossier partagé sous Linux, il faut ajouter une section dans le fichier `/etc/samba/smb.conf`.
|
|
|
|
```ini
|
|
[media]
|
|
browsable = yes
|
|
comment = Disques DATA partages
|
|
path = /media
|
|
writable = yes
|
|
create mask = 0765
|
|
hosts allow = 127.0.0.1 192.168.100.0/24
|
|
valid users = @sambausers
|
|
```
|
|
|
|
Dans cet exemple :
|
|
| [media] | Le partage va s'appeler **media** |
|
|
| --- | --- |
|
|
| comment = Disques DATA partages | Permet d'afficher des commentaires \\  |
|
|
| path = /media | Chemin d'accès au dossier sur le serveur Linux |
|
|
| writable = yes |
|
|
| create mask = 0765 |
|
|
| hosts allow = 127.0.0.1 192.168.100.0/24 |
|
|
| valid users = @sambausers | Tous les utilisateurs ayant le groupe `sambausers` pourront utiliser cette ressource. |
|
|
|
|
## Appliquer les modifications de configuration
|
|
A chaque modification de la configuration SAMBA, par le fichier `/etc/samba/smb.conf`, il faut tester le configuration et appliquer les changements au service.
|
|
```
|
|
testparm -s
|
|
sudo service smb restart
|
|
```
|
|
|
|
## Modifier le parfeu
|
|
Ne pas oublier de modifier le parfeu afin qu'il accepte les connexions entrantes pour le service Samba : 139, 445, 137 et 138.
|
|
|
|
Radicalement, on peut également désactiver le parfeu :
|
|
```
|
|
sudo systemctl stop firewalld.service
|
|
```
|
|
|
|
## Automatiser le démarrage du service Samba
|
|
Il faut automatiser le démarrage du service Samba au démarrage de l'ordinateur. Utiliser le Service Configuration (system-config-services).
|
|
|
|
## Samba Client - l'utilitaire client
|
|
<u>Lister les ressources disponibles</u>
|
|
```
|
|
smbclient -L *localhost -U fanny
|
|
```
|
|
|
|
<u>Se connecter à une ressource</u>
|
|
```
|
|
smbclient *localhost/media -U fanny
|
|
``` |