Authentification samba
Résolumamiemando Messages postés 32675 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 29 septembre 2023 - 16 nov. 2022 à 12:19
- Samba manjaro
- Partage samba windows 10 - Guide
- Samba informatique - Télécharger - Gestion de données
- Singer samba 6 ✓ - Forum Loisirs / Divertissements
- Samba quota - Forum Linux / Unix
- Chanson samba lalalala - Forum Musique / Radio / Clip
5 réponses
Bonjour !
J'ai finalement trouvé ce qui clochait : apparmor interdisait les accès distants à smbd sur le serveur.
J'ai également corrigé la façon de monter le partage et maintenant tout roule !
Sylvain
Modifié le 25 oct. 2022 à 16:00
Bonjour,
A priori, pour monter un partage samba avec une Debian en poste client, une simple commande mount suffit.. Pas besoin de bidouiller smb.conf qui selon moi sert plutôt si tu veux mettre en place un serveur samba côté Debian (or ce n'est pas ce que tu sembles vouloir faire).
Cet exemple met en évidence que tu peux passer à la commande mount le login et le mot de passe samba, ainsi que le domaine de travail. Si la commande telle quelle marche, l'idéal serait ensuite de déporter le login et le mot de passe dans un fichier avec des droits restreints afin que ces informations ne figurent pas dans ton historique bash ou dans la table des processus (voir ce lien).
Libre à toi ensuite de référencer certain de ces paramètres dans /etc/fstab pour les sous-entendre par la suite (voir ce tutoriel).
Si quelque chose n'est pas clair, n'hésite pas à demander des précisions.
Bonne chance
Bonjour,
Merci beaucoup pour ton aide !
J'ai tenté un mount depuis mon client debian :
mount -t cifs //192.168.1.16/data /media/partage
La commande me demande alors un mot de passe et aucun de ceux que je rentre n'est reconnu. Voici ce que j'obtiens :
mount error: Server abruptly closed the connection.
This can happen if the server does not support the SMB version you are trying to use.
The default SMB version recently changed from SMB1 to SMB2.1 and above. Try mounting with vers=1.0.
mount error(112): Host is down
Par ailleurs, un systemctl status smb sur le serveur me donne :
● smb.service - Samba SMB Daemon
Loaded: loaded (/usr/lib/systemd/system/smb.service; enabled; preset: disabled)
Active: active (running) since Wed 2022-10-26 11:20:43 CEST; 21min ago
Docs: man:smbd(8)
man:samba(7)
man:smb.conf(5)
Main PID: 925 (smbd)
Status: "smbd: ready to serve connections..."
Tasks: 3 (limit: 4561)
Memory: 12.1M
CPU: 440ms
CGroup: /system.slice/smb.service
├─925 /usr/bin/smbd --foreground --no-process-group
├─942 /usr/bin/smbd --foreground --no-process-group
└─943 /usr/bin/smbd --foreground --no-process-group
oct. 26 11:20:42 Minus systemd[1]: Starting Samba SMB Daemon...
oct. 26 11:20:43 Minus smbd[925]: [2022/10/26 11:20:43.031923, 0] ../../source3/smbd/server.c:1741(main)
oct. 26 11:20:43 Minus smbd[925]: smbd version 4.17.0 started.
oct. 26 11:20:43 Minus smbd[925]: Copyright Andrew Tridgell and the Samba Team 1992-2022
oct. 26 11:20:43 Minus systemd[1]: Started Samba SMB Daemon.
Ce pourrait-il qu'il y ait un problème de versions entre mon serveur (v4.17.0) et mon client Debian (v?).
Modifié le 27 oct. 2022 à 09:51
Bonjour,
Concernant le message d'erreur, c'est assez bizarre.
Côté client (Debian)
Vérifions d'un point de vue réseau que tout est ok.
ping -c2 192.168.1.16 nmap 192.168.1.16 # Si nmap n'est pas installé: sudo apt install nmap
Es-tu sûr que le nom du partage samba est bien data (on dirait que oui d'après ton premier message) ?
Est-ce que le dossier /media/partage existe sous Debian ?
Vu que le partage est actuellement fait en invité, as-tu essayé :
sudo mount -o guest //192.168.1.16/data /media/partage/
Note qu'il est possible de passer la version du protocole samba en paramètre de mount (c'est numéro de version n'ont rien à avoir avec la version du paquet samba, c'est quelque chose que tu peux spécifier au niveau de /etc/samba/smb.conf côté serveur) :
sudo mount -o guest,vers=3.0 //192.168.1.16/data /media/partage/
Côté serveur (Manjaro)
Est-ce que le pare-feu bloque samba ? Si tu utilises ufw :
sudo ufw allow samba
Sinon, indique moi le résultat de :
sudo iptables -L
Concernant systemctl status smb : vu que ton serveur samba est sous Manjaro, on est bien d'accord que tu as bien lancé cette commande sous Manjaro ?
Parviens-tu sous manjaro à monter ton partage en local ?
sudo mkdir -p /media/partage sudo mount -o guest //127.0.0.1/data /media/partage
Ce serait intéressant de regarder quand tu tentes de te connecter de lancer sur le serveur samba la commande suivante et voir les lignes qui apparaissent :
tail -f /var/log/samba/*.log
Autres pistes
Pour partager des fichiers entre deux linux il existe des solutions plus simples. Personnellement j'utilise sshfs (donc rien à avoir avec samba). Il suffit que la machine qui fasse le partage ait un serveur ssh et que la machine cliente puisse s'y connecter. Côté client, en remplaçant "login" par un profil utilisateur qui existe côté serveur :
- avec konqueror ou dolphin : fish://login@192.168.0.16
- avec nautilus : ssh://login@192.168.0.16
Bonne chance
Bonjour et merci pour ton aide et ton long message !
Reprenons :
ping -c 192.168.1.16
Ça passe sans problème.
nmap 192.168.1.16
PORT STATE SERVICE
22/tcp open ssh
25/tcp closed smtp
80/tcp closed http
139/tcp open netbios-ssn
443/tcp closed https
445/tcp closed microsoft-ds
3306/tcp closed mysql
Là je ne pige pas. Comme le port 139, j'ai bien ouvert le port 445 dans iptables :
-A INPUT -p tcp -m tcp --dport 139 -j ACCEPT -A INPUT -p tcp -m tcp --dport 445 -j ACCEPT
J'ai arrêté le pare feu de la box, fail2ban et iptables sur le serveur et le client sans succès : nmap me donne toujours le même résultat.
Es-tu sûr que le nom du partage samba est bien data (on dirait que oui d'après ton premier message) ?
Je confirme ! Je lui ai même donné le plein pouvoir :
drwxrwxrwx 2 sylvain sylvain 4096 23 oct. 13:24 data
Est-ce que le dossier /media/partage existe sous Debian ?
Oui !
Vu que le partage est actuellement fait en invité, as-tu essayé : mount -o guest //192.168.1.16/data /media/partage/
Voici ce qu'il me répond le bougre :
mount error: Server abruptly closed the connection.
This can happen if the server does not support the SMB version you are trying to use.
The default SMB version recently changed from SMB1 to SMB2.1 and above. Try mounting with vers=1.0.
mount error(112): Host is down
J'ai essayé également de passer la version de Samba en paramètre sans plus de résultat.
Côté serveur :
Voici iptables -L :
Chain INPUT (policy DROP)
target prot opt source destination
fail2ban-ssh tcp -- anywhere anywhere multiport dports ssh
REJECT all -- vip1.dyn.hpo.s1.fti.net anywhere reject-with icmp-port-unreachable
ACCEPT all -- anywhere anywhere
REJECT all -- anywhere 127.0.0.0/8 reject-with icmp-port-unreachable
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT udp -- anywhere anywhere udp dpt:54925
ACCEPT udp -- anywhere anywhere udp dpts:sesi-lm:cft-3
ACCEPT tcp -- anywhere anywhere tcp dpt:http
ACCEPT tcp -- anywhere anywhere tcp dpt:smtp
ACCEPT tcp -- anywhere anywhere tcp dpt:https
ACCEPT udp -- anywhere anywhere udp dpt:netbios-ns
ACCEPT udp -- anywhere anywhere udp dpt:netbios-dgm
ACCEPT tcp -- anywhere anywhere tcp dpt:netbios-ssn
ACCEPT tcp -- anywhere anywhere tcp dpt:microsoft-ds
ACCEPT tcp -- anywhere anywhere tcp dpt:gds-db
ACCEPT tcp -- anywhere anywhere tcp dpt:mysql
ACCEPT udp -- anywhere anywhere udp dpt:sip
ACCEPT udp -- anywhere anywhere udp dpt:7078
ACCEPT udp -- anywhere anywhere udp dpt:9078
DROP tcp -- anywhere anywhere tcp flags:FIN,PSH,URG/FIN,PSH,URG
DROP tcp -- anywhere anywhere tcp flags:FIN,SYN,RST,PSH,ACK,URG/FIN,SYN,RST,PSH,ACK,URG
DROP tcp -- anywhere anywhere tcp flags:FIN,SYN,RST,PSH,ACK,URG/NONE
DROP tcp -- anywhere anywhere tcp flags:SYN,RST/SYN,RST
DROP all -- anywhere anywhere PKTTYPE = broadcast
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
ACCEPT icmp -- anywhere anywhere icmp echo-request
LOG all -- anywhere anywhere limit: avg 5/min burst 5 LOG level debug prefix "iptables denied: "
Chain FORWARD (policy DROP)
target prot opt source destination
REJECT all -- anywhere anywhere reject-with icmp-port-unreachable
Chain OUTPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:netbios-ns
ACCEPT tcp -- anywhere anywhere tcp dpt:netbios-dgm
ACCEPT tcp -- anywhere anywhere tcp dpt:netbios-ssn
DROP all -- anywhere vip1.dyn.hpo.s1.fti.net
ACCEPT all -- anywhere anywhere
Chain fail2ban-ssh (1 references)
target prot opt source destination
RETURN all -- anywhere anywhere
> Essai de montage en local après création du répertoire /media/partage :
mount -t cifs -o guest //127.0.0.1/data /media/partage
mount.cifs: permission denied: no match for /media/partage found in /etc/fstab
tail -f /var/log/samba</span><span>/*.log
Cela ne donne rien de pertinent...
Autres pistes
Je me connecte très bien en ssh avec Dolphin aux autres PC Debian et Manjaro de la maison. Je n'ai pas encore testé un connexion avec Android. Je souhaite également avoir accès au répertoire partagé depuis mon mobile.
A+
Sylvain
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question2 nov. 2022 à 14:16
Bonjour,
Le temps de faire marcher samba, désactive tout ce qui peut être bloquant : fail2ban et iptables côté client et côté serveur (même si a priori le problème ne semble pas venir de là, éliminons les éventuelles blagues le temps de comprendre).
Le port samba (139) semble ouvert et le routage est correct. Cela voudrait dire que le problème vient bien de samba.
Tu ne m'as pas dit si tu arrivais sur le serveur à monter ton partage samba. Ça écarterait toutes les considérations réseaux (remplace simplement 192.168.1.16 par 127.0.0.1). Plus exactement, il est bizarre que tu aies une erreur (voir mount -t cifs -o guest //127.0.0.1/data /media/partage) car normalement elle a tous les paramètres (elle est basée sur ce message). En effet, mount fait appel à /etc/fstab seulement si tu omets certains paramètres de la commande, or ici tu as donné la source, le point de montage, les options.
Concernant tail -f /var/log/samba.log il faut la laisser tournet et regarder ce qui apparaît quand un client tente de se connecter. L'idéal serait que tu tentes la connexion depuis le client et depuis le serveur pour comparer.
Peut-être aussi que ça vaudrait le coup de faire une authentification avec login et mot de passe (généralement c'est comme ça qu'on fait), car peut être que le problème vient spécifiquement du fait que tu tentes une connexion invité (ne me demande pas pourquoi, je n'utilise jamais samba :p).
Autres pistes
Il existe des clients sftp. Pour android tu peux tester AndFTP, et plus généralement n'importe quelle alternative à WinSCP pour Android.
Bonne chance
16 nov. 2022 à 12:19
Merci pour ton retour, je bascule le sujet en résolu.