간단한 삼바 공유-비밀번호 없음 Windows는 해당 서버에

내가 필요한 것:

비밀번호가없는 파일 서버를위한 간단한 삼바 구성 및 모든 사용자를위한 전체 읽기 쓰기. 보안이 필요하지 않습니다.

역사:

집에 파일을 호스팅하는 서버를 만들고 있습니다. 서버의 목표는 Windows 시스템 용 파일을 호스팅하는 것입니다. 지금까지 관리 한 것이이 구성입니다. 이를 통해 네트워크에서 공유와 서버를 볼 수 있지만 Windows는 해당 서버에 액세스 할 수 없다고 말합니다. 서버, 모든 최신 업데이트에서 Linux 메이트를 사용하고 있습니다.

내 구성 :

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

어떤 아이디어?



답변

그렇습니다. 삼바는 고통 스러울 수 있습니다. 집뿐만 아니라 직장에서도 사용합니다.

가장 먼저해야 할 일은 문제 해결을 쉽게하기 위해 처음부터 다시 시작하는 것입니다. 터미널에서 아래 명령을 실행하면됩니다.

dpkg-reconfigure samba-common

그런 다음 공유하려는 samba 서버의 폴더로 이동하여 아무도 공유를 읽고 쓸 수 없는지 확인하십시오. 이는 사용자가 Windows 클라이언트가 사용하는 사용자 이름이 아니기 때문입니다. 나는 보통 단순하게하기 위해 / 디렉토리에 폴더를 만들지 만, “올바른”방법은 / srv의 하위 폴더를 만드는 것입니다. 권한을 아직 수정하지 않은 경우 아래 명령을 사용하십시오.

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

다음 명령을 루트로 실행하여 아무도 디렉토리에 쓸 수 없는지 테스트 할 수 있습니다.

sudo -u nobody touch test_file

/etc/samba/smb.conf를 편집하고 [printers] 공유 정의 아래에 행을 추가하십시오.

[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

그런 다음 저장하고 다음을 실행하십시오.

testparm

오타가 있으면 경고합니다. 다음으로 삼바 서비스를 다시 시작하면됩니다.

sudo systemctl restart smbd
sudo systemctl restart nmbd

답변

나는 이것이 오래된 스레드라는 것을 알고 있지만 로그인 할 필요없이 폴더를 만들고 공유하는 문제를 해결하는 데 도움이되었습니다. 다른 스레드가 많이 있지만 오도의 소지가 있습니다. 나는 다른 게시물과의 작은 차이가 너무 많아서 거의 포기하지 않고 머리카락 절반을 뽑아 낸 다른 누군가를 도울 수 있다고 생각했기 때문에 아래에서 세미 빅너 가이드를 제공했습니다 🙂

나를 위해 기본 AWS Linux 이미지 (Amazon Linux AMI 2017.03.0 (HVM))에서 루트 dir에 폴더를 만들어야했습니다 / 기본 ec2-user에서 생성 된 경우 권한을 할당 할 수 없었습니다. 권한을 할당 할 때 nogroup이 작동하지 않았으므로 nobody.nobody를 사용해야했습니다. 마지막으로 gloabl 독립형 서버 섹션에서 guest = Bad User에 map을 포함시켜야했습니다. 기본적으로 보안 = 사용자라고합니다.

따라서 전체 단계는 새 서버를 배포하는 것입니다.

필요한 경우 삼바 설치

폴더를 만들고 권한을 할당

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

삼바 파일 편집

nano /etc/samba/smb.conf

# —- 독립형 서버 옵션 —- “지도를 게스트에 추가”

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

# ==== 공유 정의 ==== 섹션에서 공유를 추가하십시오

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

파일을 저장하고 samaba를 다시 시작하십시오.

/etc/init.d/smb restart

답변

@Andrew 답변 외에도 최근 우분투 17.04에서 17.10으로 업그레이드하면 systemctl samba-dc-ad.service 에 문제가 발생합니다 . 아마도 samba-dc-ad.service에서 samba를 다시 설치하려고 할 때 마스크의 버그가 아닌 것 같습니다 (인 텐셜). 업그레이드로 인해 Samba 설치 / 재설치에 문제가있는 경우 @ Andrew ‘s answer 이전 단계 :

  1. apt-get 업데이트 및 apt-get-upgrade <-업그레이드가 눈에 띄지 않게하십시오
  2. apt-get 설치 삼바
  3. 이 페이지로 이동하여 지시 사항을 수행하십시오.
    https://wiki.samba.org/index.php/Managing_the_Samba_AD_DC_Service_Using_Systemd

  4. apt-get -f 삼바 설치

  5. 지금 위의 단계를 수행하십시오. 🙂

답변