Windows에서 Samba 액세스가 거부되었습니다.

Windows에서 Samba 액세스가 거부되었습니다.

Linux(가상 상자의 fedora 25)에 액세스하고 싶은데 두 가지 질문이 있습니다.

  1. 익명 액세스를 구성하지만 Windows에서는 Samba를 통해 Linux에 액세스하려면 여전히 계정과 비밀번호가 필요합니다.

  2. 계정 액세스를 구성할 때 Windows에서는 계정 또는 비밀번호가 올바르지 않다는 메시지를 표시하지만 실제로는 smbclient 확인을 통해 정확합니다.

익명 액세스를 구성합니다.

[global]
        workgroup = WORKGROUP
        security = user
        map to guest = Bad User
        guest account = guest 
        passdb backend = tdbsam
        cups options = raw
        interfaces = enp0s3
        bind interfaces only = true

[myshare]
        comment = fedora samba
        path = /home/myshare/
        writable = yes
        browsable = yes
        read only = no
        public = yes
        available = yes
        guest ok = yes
        valid users = root yangli guest
        read list = root yangli guest 
        write list = root yangli guest
        create mode = 0755
        directory mode = 0755
        allow hosts = 192.168.56.1/24
        only guest = yes

이유는 무엇입니까?

답변1

페도라 25의 경우,Fedora 버전 번호는 잘 모르지만 RHEL/Centos 7.x를 사용하고 있습니다. 기본적으로 selinux를 활성화한 경우 setenforce 0다음에 재부팅할 때까지 일시적으로 루트 권한으로 selinux를 허용 모드로 전환하여 삼바 액세스가 작동하는지 확인할 수 있습니다. 그렇다면 이는 selinux 문제이며 RHEL/Centos에서는 etc/samba/smb.conf.exampleSamba 공유가 selinux 세트와 함께 작동하도록 허용하는 데 필요한 Samba 관련 selinux 명령을 설명합니다.

귀하의 Fedora 버전에서는 끄겠습니다 /etc/samba/smb.conf.example.

참고로, smb.conf이전 버전의 삼바에서 수행한 작업은 다음과 같습니다. 작동하는 데 필요하다고 생각되는 최소한의 사항을 보여줍니다. 설정을 너무 엄격하게 설정하면 성공적인 연결을 방해할 수 있으므로 일반적으로 모든 연결을 허용한다는 의미를 지정하지 않는 것이 더 좋습니다.

삼바 가 [myshare]실행 allow hosts되면 valid users필요한 경우 이러한 제한 사항을 추가하는 것을 고려하십시오.

[global]
#       min protocol = SMB1 needed for winxp
        min protocol = SMB1
#       max protocol SMB2 needed to work with win10, unspecified for this older version of samba is smb1.
        max protocol = SMB2 
        security = user
        passdb backend = tdbsam
#       map to guest = never prevents popup option, bad user allows popup in windows
        map to guest = Bad User

[data]
    path = /data
    read only = No
#   guest ok = no
#   create mask = 660
#   directory mask = 770

guest ok = no, 게스트 나쁜 사용자로 매핑되면 Windows에서 팝업을 허용하여 누구에게나 올바른 Linux 사용자 이름과 비밀번호를 입력할 수 있는 기회를 제공합니다. 게스트에 대한 매핑은 팝업을 차단하지 않습니다. 즉, Windows 사용자의 사용자 이름은 Linux의 유효한 로컬 사용자(security=user에 따라)와 동일해야 함을 의미합니다. min/max protocol지정 하지 않아도 되지만 Samba 3.6 버전에서는 지정해야 합니다. Fedora 25에서 어떤 Samba 버전을 사용하고 있는지 모르겠습니다. Samba 3.x라면 최소/최대 프로토콜을 지정해 보세요.

smbpasswd -a <usernameLinux 시스템에서 수행하는 것을 잊지 마십시오 .

답변2

WinXP와 Win7이 게스트로 삼바에 액세스할 수 있는 시스템이 있습니다. 도움이 될 수 있는 일부 항목은 다음과 같습니다.

[global]
security = user
null passwords = yes
map to guest = Bad Password
guest ok = Yes

신뢰할 수 있는 LAN에서 공개 공유를 사용하고 있습니다.

관련 정보