samba 설정

samba는 이기종 시스템간 파일 공유를 위한 파일 시스템을 제공하며, 설치는 아래와 같다.

$ sudo apt install samba samba-common cifs-utils

파일 공유 권한 및 공유 디렉토리 등의 samba 설정은 /etc/samba/smb.conf 파일을 수정하면 된다. 아래의 설정은 logonDesk 파일시스템을 Anonymous 접근을 허용하며, RW 권한은 read-only로 설정한 것을 나타낸다.

[logonDesk]
	path = /media/gon
	browsable = yes
	read only = yes
	guest ok = yes
  • logonDesk
    • 외부 접속시 표시되는 이름
  • path = /media/gon
    • 공유 디렉토리 설정
    • 외부 접근이 가능하기 위해 상위/하위 디렉토리 모두 read / execute 권한 필요
      • media 디렉토리의 권한이 read / execute 권한이 없을 경우 외부 접근 불가
    • 공유할 gon 디렉토리만 권한을 주고 상위 디렉토리(media) 권한 설정을 하지 않는 경우가 종종 발생
  • browsable = yes
    • 디렉토리 탐색 권한 설정
    • 공유 디렉토리에 execute 권한이 없을 경우 탐색 불가
  • read only = yes
    • 읽기 권한만 허용
    • writable 권한을 설정할 경우 'no'로 설정
  • writable = yes
    • 파일 변경 권한 설정
    • 여기서는 설정 하지 않음
  • force user = gon
    • writable 설정이 되어 있을 경우, 변경한 파일에 대한 소유자를 설정
    • writable / force user 함께 설정되어야 함
  • guest ok = yes
    • Anonymous 접근 허용

force user 옵션을 설정한 경우 사용자 계정(gon)에게 sambashare 그룹 권한을 할당 해야 한다. 그룹 권한은 /etc/group 파일을 아래와 같이 수정하면 된다.

saned:x:127:
gon:x:1000:
sambashare:x:128:gon

samba 관련 가장 기본적인 위의 옵션을 적용하고 samar 데몬을 다시 시작하도록 한다.

$ sudo /etc/init.d/smbd restart