Proste udostępnianie Samby - BRAK HASŁA

17

Czego potrzebuję:

Prosta konfiguracja samby dla serwera plików bez hasła i pełny odczyt zapisu dla wszystkich. Nie wymaga bezpieczeństwa.

Historia:

Robię serwer do przechowywania plików dla mojego domu. Celem serwera jest hostowanie plików na komputerach z systemem Windows. Najlepsze, jakie udało mi się do tej pory zrobić, to ta konfiguracja. Dzięki temu widzę udziały i serwer z sieci, ale mówi, że Windows nie może uzyskać do nich dostępu. Korzystam z mate Linux na serwerze, wszystkie najnowsze aktualizacje.

Moja konfiguracja:

[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
######

Jakieś pomysły?

Peter Reynold Robinson Junior
źródło

Odpowiedzi:

22

Tak, Samba może być bólem. Używam go zarówno do domu, jak i do pracy.

Pierwszą rzeczą, którą powinieneś zrobić, to zacząć od nowa, aby ułatwić rozwiązywanie problemów. Możesz to zrobić, uruchamiając poniższe polecenie w terminalu.

dpkg-reconfigure samba-common

Następnie przejdź do folderu na serwerze samby, który chcesz udostępnić, i upewnij się, że użytkownik nie może czytać ani pisać w tym udziale. Jest tak, ponieważ użytkownik nikt nie jest nazwą użytkownika używaną przez klientów systemu Windows. Zwykle tworzę folder w katalogu / tylko dla uproszczenia, ale „poprawnym” sposobem byłoby utworzenie podfolderu / srv. Jeśli uprawnienia nie zostały jeszcze zmodyfikowane, użyj poniższych poleceń.

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

Możesz także sprawdzić, czy nikt nie może zapisać do katalogu, uruchamiając następującą komendę jako root.

sudo -u nobody touch test_file

Zmodyfikuj plik /etc/samba/smb.conf i dodaj linie poniżej definicji udziału [drukarki].

[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

Następnie, gdy skończysz, zapisz go i uruchom następujące.

testparm

Ostrzeże Cię, jeśli popełnisz literówki. Następnie wystarczy ponownie uruchomić usługi samby.

sudo systemctl restart smbd
sudo systemctl restart nmbd
Andrzej
źródło
To działało idealnie! Skopiowano do wykorzystania w przyszłości. problemem był problem chmod! bardzo ci dziękuję.
Peter Reynold Robinson Junior
1
Dobra robota, wymyślenie tego, większość po prostu się poddałaby. Pamiętaj, że przy współużytkowaniu plików w dowolnym systemie operacyjnym często problemem są uprawnienia.
Andrew
1
Świetny. to działa dla mnie, po prostu mam problem, gdy próbuję ponownie zainstalować sambę, ale problem polegał na tym, że również potrzebuję zrobić, sudo apt-get autoremovea następnie sudo apt-get purge samba*
iLevi
Powodowało to błąd uruchamiania nmdb po zakończeniu instalacji samby, log.nmdb mówi „błąd podczas otwierania pliku konfiguracyjnego” i nie ma w ogóle folderu / etc / samba. Ponowna próba wyczyszczenia i usunięcia oraz ponownej instalacji skutkowała tym samym wielokrotnie.
Frank H.
Jest to jedyne działające podejście w całym Internecie! Ratujesz mój dzień, dziękuję.
Evi Song,
0

Zdaję sobie sprawę, że to stary wątek, ale pomógł mi rozwiązać problem tworzenia i udostępniania folderu bez konieczności logowania. Istnieje wiele innych wątków, ale są one mylące. Podałem poniżej przewodnik dla dużych biginnerów, ponieważ istnieje tak wiele drobnych różnic w stosunku do innych postów, że pomyślałem, że może to pomóc komuś, kto prawie się poddał i wyciągnął połowę włosów :-)

Dla mnie na domyślnym obrazie systemu AWS Linux (Amazon Linux AMI 2017.03.0 (HVM)) musiałem utworzyć folder w katalogu głównym katalogu /, ponieważ nie mogłem przypisać uprawnień, jeśli utworzono go w domyślnym użytkowniku ec2. Przypisując uprawnienia musiałem użyć nikogo. Nikt jako nogroup nie działał. na koniec musiałem dołączyć map to guest = Bad User w sekcji samodzielnego serwera gloabl, gdzie domyślnie jest napisane security = user

Tak więc pełne kroki byłyby przy wdrażaniu nowego serwera:

w razie potrzeby zainstaluj sambę

utwórz folder i przypisz uprawnienia

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

edytuj plik samby

nano /etc/samba/smb.conf

znajdź wiersz # ---- Opcje samodzielnego serwera ---- dołącz „mapę do gościa”

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

W sekcji # ==== Definicje udostępniania ==== dodaj swój udział

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

Zapisz plik i uruchom ponownie samaba

/etc/init.d/smb restart
David
źródło
0

Oprócz odpowiedzi @Andrew, ostatnia aktualizacja z Ubuntu 17.04 do 17.10 stwarza problemy w usłudze systemctl samba-dc-ad.service . Podobno to nie jest błąd w masce, gdy próbujesz ponownie zainstalować sambę w samba-dc-ad.service (intensywne). Dodatkowe kroki przed odpowiedzią @ Andrew , jeśli masz problemy z instalacją / ponowną instalacją samby z powodu aktualizacji:

  1. apt-get update & apt-get-upgrade <- upewnij się, że żadne aktualizacje nie są zaległe
  2. apt-get install samba
  3. przejdź do tej strony i wykonaj instrukcje: https://wiki.samba.org/index.php/Managing_the_Samba_AD_DC_Service_Using_Systemd

  4. apt-get -f zainstaluj sambę

  5. Wykonaj teraz powyższe kroki. :-)
BlizzardsGambit
źródło