Samba 공유로 사용자를 어떻게 매핑합니까?

Samba 공유로 사용자를 어떻게 매핑합니까?

Windows 공유가 게시된 Synology Diskstation이 있습니다. 서버와 클라이언트(Ubuntu 12.04) 모두에 사용자 이름과 비밀번호가 일치하는 사용자 계정이 있습니다. (신화/신화)

공유는 다음과 같이 마운트됩니다.

//192.168.88.1/plex  /mnt/plex  cifs  username=myth,password=xxxx  0  0

공유에서 파일을 생성하고 읽고 삭제할 수 있습니다. 편집하거나 덮어쓸 수 없습니다.

다음과 같이 생성됩니다.

-rw-rw-r-- 1 1026 users  725178368 Mar 18 13:12

서버(자체 Linux 버전인 DSM4.1을 실행하는 Synology DiskStation)에는myth라는 사용자가 있습니다. 클라이언트(Ubuntu 12.04)에는 Myth라는 사용자가 있습니다. 두 계정 모두 동일한 비밀번호를 가지고 있습니다.

그렇다면 uid 1026을 사용자 신화에 매핑해야 할 것 같습니다. 어떻게 해야 하나요?

DiskStation의 smb.conf:

[global]
    printcap name=cups
    winbind enum groups=yes
    security=user
    local master=no
    realm=*
    passdb backend=smbpasswd
    printing=cups
    winbind enum users=yes
    load printers=yes
    workgroup=WORKGROUP
[plex]
    invalid users=nobody,nobody
    valid users=nobody,guest,admin,myth,nobody
    comment="Storage Location For PlexMediaServer"
    path=/volume1/plex
    guest ok=yes
    browseable=yes
    fileindex=yes
    mediaindex=no
    edit synoacl=no
    enable recycle bin=yes
    recycle bin admin only=no
    hide unreadable=no
    ftp disable list=no
    ftp disable modify=no
    ftp disable download=no
    read list=nobody,guest,nobody
    write list=nobody,admin,myth,nobody
    writeable=yes

답변1

당신이 원하는 것은 Samba 사용자 이름 맵 파일을 설정하는 것입니다.

/etc/samba/smb.conf 파일의 [Global] 섹션에서 "username map" 옵션을 맵 파일의 위치로 설정할 수 있습니다.

[global]
    username map = /pathToMapFile/usermap.txt

usermap.txt(또는 무엇이라고 부르든)에는 다음 스타일로 형식화된 줄이 포함되어 있습니다.mapTo = 지도에서. 예를 들어, Windows 상자의 사용자가 Ubuntu 컴퓨터의 Samba 공유에 접근할 수 있는지 확인하려면 usermap.txt 파일에 다음과 같은 줄이 있어야 합니다.

myUbuntuUserName = myWindowsUserName

물론 이러한 변경 사항을 보려면 Samba 서비스를 다시 시작해야 합니다.

sudo service smbd restart

추가 도움이 필요하면 아래 문서를 확인하세요. 공식 Samba 문서(아래)는 여러 사용자 이름을 단일 사용자에게 매핑하거나 그룹을 사용자에게 매핑하는 방법을 보여줍니다.

사용자 이름 맵(G)

사용자 이름 맵 - 관리

관련 정보