Partage Samba simple - PAS DE MOT DE PASSE

17

Ce dont j'ai besoin:

Configuration samba simple pour serveur de fichiers sans mot de passe et écriture en lecture complète pour tout le monde. Aucune sécurité requise.

Histoire:

Je crée un serveur pour héberger des fichiers pour ma maison. Le but du serveur est d'héberger des fichiers pour les machines Windows. Le meilleur que j'ai réussi à faire jusqu'à présent est cette configuration. Avec cela, je peux voir les partages et le serveur depuis le réseau, mais il dit que Windows ne peut pas y accéder. J'utilise Linux mate sur le serveur, toutes les dernières mises à jour.

Ma config:

[global]

   workgroup = BIOHAZARD
   netbios name = MATUSALEM
   guest account = nobody
   log file = /usr/local/samba/var/log.%m
   max log size = 50
   security = user
   map to guest = bad user
   encrypt passwords = yes

# Share Definitions 
[homes]
   comment = Home Directories
   browseable = no
   writable = yes

[Teste]
    path = /home/peter/share
    writable = yes
    printable = no
    comment = teste
    only guest = yes
    public = yes
        guest ok = yes
        guest only = yes
        guest account = nobody
        browsable = yes
[REDE]
    comment = TESTE 2
    public = yes
    delete readonly = yes
    path = /HOME/REDE
    writeable = yes
        guest ok = yes
        guest only = yes
        guest account = nobody
        browsable = yes
######

Des idées?

Peter Reynold Robinson Junior
la source

Réponses:

22

Oui, Samba peut être une douleur. Je l'utilise aussi bien pour ma maison que pour mon travail.

La première chose à faire est de recommencer à zéro pour faciliter le dépannage. Vous pouvez le faire en exécutant la commande ci-dessous dans le terminal.

dpkg-reconfigure samba-common

Ensuite, allez dans le dossier du serveur samba que vous souhaitez partager et assurez-vous que l'utilisateur que personne ne peut lire et écrire sur le partage. C'est parce que l'utilisateur que personne n'est le nom d'utilisateur que les clients Windows utilisent. Je crée habituellement un dossier dans le répertoire / juste pour garder les choses simples, mais la manière "correcte" serait de créer un sous-dossier de / srv. Si vous n'avez pas déjà modifié les autorisations, utilisez les commandes ci-dessous.

sudo chown -R nobody.nogroup the_folder
sudo chmod -R 777 the_folder

Vous pouvez également tester pour voir si personne ne peut écrire dans le répertoire en exécutant la commande suivante en tant que root.

sudo -u nobody touch test_file

Modifiez votre /etc/samba/smb.conf et ajoutez les lignes sous la définition de partage [imprimantes].

[share_name]              ;the share name can be what ever you want
browseable = yes
path = the_complete_path_to_the_shared_folder
guest ok = yes
read only = no
create mask = 777

Ensuite, lorsque vous avez terminé, enregistrez-le et exécutez ce qui suit.

testparm

Cela vous avertira si vous avez fait des fautes de frappe. Ensuite, il vous suffit de redémarrer les services samba.

sudo systemctl restart smbd
sudo systemctl restart nmbd
Andrew
la source
Cela a parfaitement fonctionné! Copié pour référence future. le problème était la chose chmod! Merci beaucoup.
Peter Reynold Robinson Junior
1
Bon travail pour le comprendre, la plupart auraient juste abandonné. N'oubliez pas qu'avec le partage de fichiers, sur n'importe quel système d'exploitation, les autorisations sont souvent le problème.
Andrew
1
Génial. cela fonctionne pour moi, j'ai juste un problème lorsque j'essaie de réinstaller samba, mais le problème était parce qu'il faut aussi faire sudo apt-get autoremoveet ensuite sudo apt-get purge samba*
iLevi
Cela a entraîné une erreur au démarrage de nmdb après l'installation fin de samba, avec log.nmdb disant "erreur d'ouverture du fichier de configuration", et aucun dossier / etc / samba présent du tout. Une nouvelle tentative du processus de purge et de suppression et de réinstallation a entraîné la même chose encore et encore.
Frank H.
C'est la SEULE approche qui fonctionne sur Internet! Vous sauvez ma journée, merci.
Evi Song
0

Je me rends compte que c'est un vieux fil de discussion, mais cela m'a aidé à résoudre le problème de la création et du partage d'un dossier sans connexion requise. Beaucoup d'autres discussions, mais elles sont trompeuses. J'ai donné un guide semi-biginners ci-dessous car il y a tellement de petites différences avec d'autres articles que je pensais que cela pourrait aider quelqu'un d'autre qui a presque abandonné et s'est arraché la moitié des cheveux :-)

Pour moi, sur une image AWS Linux par défaut (Amazon Linux AMI 2017.03.0 (HVM)), j'ai dû créer le dossier dans le répertoire racine / car je ne pouvais pas attribuer les autorisations s'il était créé sous l'utilisateur ec2 par défaut. Lors de l'attribution des autorisations, j'ai dû utiliser nobody.nobody car nogroup ne fonctionnait pas. enfin j'ai dû inclure la carte à guest = Bad User sous la section du serveur autonome gloabl où par défaut il est dit security = user

Ainsi, les étapes complètes seraient sur le déploiement d'un nouveau serveur:

installez samba si nécessaire

créer le dossier et attribuer des autorisations

sudo su
cd /
mkdir the_folder
chown -R nobody.nobody the_folder
chmod -R 777 the_folder

éditer le fichier samba

nano /etc/samba/smb.conf

trouver la ligne # ---- Options du serveur autonome ---- ajouter "mapper à l'invité"

security = user
passdb backend = tdbsam
map to guest = Bad User

Dans la section # ==== Définitions de partage ==== ajoutez votre partage

[SHARENAME]
path = the_folder
read only = no
create mask = 777
guest ok = yes

Enregistrez le fichier et redémarrez samaba

/etc/init.d/smb restart
David
la source
0

En plus de la réponse @Andrew, la récente mise à niveau d'ubuntu 17.04 vers 17.10 crée des problèmes sur le systemctl samba-dc-ad.service . Soi-disant, ce n'est pas un bogue sur le masque lorsque vous essayez de réinstaller samba sur le samba-dc-ad.service (intensional). Étapes supplémentaires avant la réponse de @ Andrew , si vous rencontrez des problèmes avec l'installation / la réinstallation de samba en raison de la mise à niveau:

  1. apt-get update & apt-get-upgrade <- assurez-vous qu'aucune mise à niveau n'est en cours
  2. apt-get install samba
  3. allez sur cette page et suivez les instructions: https://wiki.samba.org/index.php/Managing_the_Samba_AD_DC_Service_Using_Systemd

  4. apt-get -f install samba

  5. Effectuez maintenant les étapes ci-dessus. :-)
BlizzardsGambit
la source