본문 바로가기
[OS]/우분투

삼바 설치 및 설정

by control+c 2014. 12. 18.
반응형

 

처음 설치해 보는 samba.. 구글링해서 나오는 설정 방법들은 다들 예전 방법인지 잘 되지 않는 부분이 있어서 기록해 둔다. 지금 버전은 samba3이다. 프린터 공유와 같은 기능까지는 아니지만, 일단 파일 공유까지는 가능.. 권한 설정부터 하루 종일 삽질만 했다. TㅅT

설치한 samba는 3.6.3. 버전이고, apt-get을 통해서 받았다.


1. samba를 설치한다.
$ sudo apt-get install samba


2. samba 설정
기본 설정에서 변경되거나 중요하다고 생각되는 부분만 적었다.
$ sudo vi /etc/samba/smb.conf

# samba 전체 설정이다. - default로 주석처리가 되어 있으므로 풀어서 사용하면 된다.
[global]
# Windows와 연결하려면 workgroup 이름을 맞추라고 한다.
   workgroup = WORKGROUP
# 서버의 사용자 계정만 사용할 수 있도록 한다.
   security = user


# [homes] 영역을 수정하면, 사용자 계정을 통해서 자기 홈 경로를 접근할 수 있다. 접근 경로는 \\server\username 이다.
[homes]
   comment = Home Directories
# yes로 설정하면 접속 권한이 없어도 같은 네트웍에 있는 모든 컴터에서 폴더를 볼 수 있다. - browseable에 대해서는 맨 아래부분에 설명
   browseable = no
# 읽기전용으로 할 것인지 여부. 기존 버전에는 writeable 또는 writable로 설정이 있었던 것 같은데 지금은 read only를 사용하는듯 싶다.
   read only = no
# 생성되는 파일 권한
   create mask = 0664
# 생성되는 폴더 권한
   directory mask = 0755
# home 계정은 일반적으로 모든 사용자가 접근 가능하다. %S로 설정해 주면 username 사용자만이 \\server\username을 사용할 수 있게 할 수 있다.
   valid users = %S


# 여러 사용자가 함께 사용할 수 있는 공유 폴더 설정이다. '[]'안에 접속할 경로를 설정해준다. 아래처럼 '[share]'를 사용하면 '\\server\share'로 접속하면 된다. 이름은 원하는대로 지으면 된다.
# 이 부분은 설정 파일에 존재하지 않으므로 적당한 위치에 내용 전체를 추가해 주면 된다.
# 사용자간 공유할 필요가 없으면 생략해도 된다.
[share]
   comment = Shared Files
# 실제 파일이 저장될 공간으로, 설정이 끝나고 폴더를 생성해 주어야 한다.
   path = /data/samba/share
# no로 해도 무관 - browseable에 대해서는 맨 아래부분에 설명
   browseable = yes
   read only = no
   create mask = 0664
   directory mask = 0755
# Anonymous로 접속 가능하게 하려면 아래 주석을 풀어준다. 이 때는 read only가 좋겠지..??
#   guest ok = yes

$sudo nano /etc/samba/smb.conf


# 아래 내용 추가

[user1_home]

        comment= My  Folder

        path = /home/user1

        read only = no

        browseabale = yes

        guest ok = no

        create mask = 0666

        valid users = user1


[pub]

        comment=public                           # 폴더설명

        path = /sharefolder/pub                # 공유 대상 경로

        read only = no                              # 읽기 전용 여부

        browseable = yes                         # 해당 폴더가 보일지 여부

        guest ok = no                               # 누구나 접근 가능여부

        create mask = 0666                  # 1. 파일 생성시 권한 비트

        force create mode = 0                   # 2. OR masking

        security mask = 0777                     # 3. AND masking

        force security mode = 0                 # 4. OR masking with security mask

        directory mask = 0777                    # 5. 디렉토리 생성시 권한 비트 

        force directory mode = 0                # 6. OR masking

        directory security mask = 0777        # 7. AND masking

        force directory security mode = 0    # 8. OR masking with directory security mask

 

 

3. 공유 폴더 생성
공유할 폴더를 생성하고, sambashare 그룹에서 사용할 수 있도록 owner를 변경해 준다. 사용자간 공유할 필요가 없으면 생략해도 된다.

$ sudo mkdir -p /data/samba/share
$ sudo chown nobody.sambashare /data/samba/share


4. samba 비밀번호 설정
samba 계정이 사용할 비밀번호를 설정한다. 시스템에 등록된 사용자만 samba 사용자로 추가가 가능하다. 시스템 비밀번호 유출을 막기 위해 다른 비밀번호를 설정하고 사용하는 것이 좋다.
$ sudo smbpasswd -a <username>
New SMB password:
Retype new SMB password:
Added user <username>.

$ sudo smbpasswd -a notExists
New SMB password:
Retype new SMB password:
Failed to add entry for user notExists.


5. 공유 폴더 접근 사용자 권한 추가
공유 폴더에 접근하기 위해 사용자의 그룹에 sambashare 그룹을 추가해 준다.
$ id user1
uid=1001(user1) gid=1001(user1) groups=1001(user1)
$ sudo usermod -a -G sambashare user1
$ id user1
uid=1001(user1) gid=1001(user1) groups=1001(user1), 127(sambashare)


6. samba 프로세스 시작
smbd는 samba 데몬이고, nmbd는 NetBIOS 이름을 IP 대신 사용할 수 있도록 하는 데몬이다. IP로 접근해서 사용한다면 nmbd는 실행시킬 필요 없다.
$ sudo restart smbd
$ sudo restart nmbd


7. 접속
7.1. Windows - 네트워크 드라이브 연결

탐색기에서 '컴퓨터'로 이동한다. 상단에 있는 '네트워크 드라이브 연결'을 클릭하면 접속할 서버와 드라이브명을 설정할 수 있다. nmbd를 실행시켰다면 IP 대신 NetBIOS 이름을 사용할 수 있다. 재부팅 없이 이전에 접속했던 아이디와 다른 아이디로 접속하고 싶다면 '다른 자격 증명을 사용해서 연결'을 체크한다. (예를 들어, 같은 경로를 user1로 접속했다가 user2로 접속하고 싶은 경우)

접속이 성공하면 아래와 같이 드라이브가 추가된다.


7.2. MacOS - Finder에 mount
MacOS의 파인터를 실행시킨다. 시스템 메뉴에서 '이동' -> '서버에 연결...'을 선택하거나 단축키 'Cmd + K'를 누르면 아래와 같은 연결 창이 뜬다. 접속할 서버 주소를 적어주면 된다. 주소 형식은 조금 다른 'smb://server/username'이다.

사용자 계정 정보를 넣고 로그인을 하게 되면 아래와 같이 마운트 된다.




- 기타 설명
smb.conf 설정에서 browseable = yes로 설정하는 경우 로그인 하지 않아 접속 권한이 없는 경우에도 아래처럼 탐색이 가능하다.

반응형

'[OS] > 우분투' 카테고리의 다른 글

명령어 모음 2014-12-23  (0) 2014.12.23
우분투에서 자바 경로 확인 명령어:which  (0) 2014.12.19
오라클 JDK7 설치하기  (0) 2014.12.18
우분투 업데이트 하기  (0) 2014.12.18
root계정 패스워드 변경  (0) 2014.12.18

댓글