[SAMBA] 삼바(SAMBA) 정의 및 설치/설정
삼바란 무엇인가요 ?
삼바(SAMBA)는 마이크로소프트와 인텔에서 개발한 SMB(Server Message Block) 네트워크 프로토콜을 이용해 윈도우와 유닉스 계열의 운영체제나 다른 시스템 간의 자원을 공유할 수 있도록 만든 프로그램입니다.
예를 들어, 회사의 서버가 리눅스로 구성되어 있는데 회사원들에게는 윈도우 기반 노트북을 제공하였다고 가정합시다.
그런데 리눅스 서버에 올려져있는 파일을 윈도우에서 사용하고 싶거나 윈도우 컴퓨터에서 작업한 파일을 리눅스에서 사용하고 싶을때 바로바로 파일을 옮길 수 있는 방법이 있는데 그것이 바로 삼바입니다.
즉, 삼바는 윈도우 운영체제를 사용하는 PC에서 Linux, UNIX 서버에 접속하여 파일이나 프린터를 공유하여 사용할 수 있도록 해주는 소프트 웨어입니다.
삼바(SAMBA)설치 & 설정
1. 리눅스에서 삼바(SAMBA) 설치하기
sudo apt-get -y install samba
2. 계정 생성하기
sudo adduser [공유할 계정]
sudo smbpasswd -a [공유할 계정]
비밀번호를 지정해주면 됩니다.
- smbpasswd 명령어
옵션 | 설명 |
a | 삼바 사용자 추가할 때 사용 (리눅스 시스템에 존재하는 계정이여야 합니다.) |
x | 삼바 사용자를 제거할 때 사용 |
d | 삼바 사용자를 일시적으로 비활성화할 때 사용 |
e | 삼바 사용자를 활성화할 때 사용 |
n | 패스워드 없이 로그인이 가능하도록 할 때 사용(smb.conf에서 null passwords = yes라고 설정) |
3. 삼바(SAMBA) 환경 추가 설정하기
이 파일에는 여러 가지 옵션을 조작하여 설정할 수 있습니다. 어떤 폴더를 공유할 것인지, 사용자마다 접근 공간을 다르게 해줄 것인지, 파일을 읽고 쓰기 권한만 부여할 것인지 등등의 설정을 지정해주어야 합니다.
sudo vi /etc/samba/smb.conf
설정 파일에서 []로 표기된 것은 각각의 section을 나누기 위한 것입니다.
기본적으로 [global], [home], [printers] 3가지 구역이 존재합니다.
필요에 따라 각 구역의 설정을 변경해주어야 합니다.
- [global] : 삼바 서버 전체의 환경설정
- [home] : 각 사용자가 서버의 홈 디렉토리로 접근할 때 권한
- [printers] : 프린터 관련 권한
위에서 만든 사용자 계정에 대한 설정을 추가해야 합니다.
[사용자 계정] = 하나의 section정의로 윈도우에서 접근할 때 폴더 이름이 세션안의 문자열로 보임
comment = [삼바로 공유될 디렉토리 설명]
path = [공유할 내부 디렉터리 경로]
browsable =[공유 이름이 사용할 때 브라우징 옵션 ( yes | no )]
create mask = [파일 접근 권한을 설정, Default: 0744]
directory mask = [디렉터리 접근 권한을 설정, Default: 0755]
read only = [공유할 디렉터리를 읽기만 가능한지 지정 ( yes | no )]
writable = [공유할 디렉터리를 쓰기 가능한지 지정. read only와 반대되는 설정 ( yes | no )]
guest ok = [인증되지 않은 사용자의 접근 설정, public 옵션과 같다 ( yes | no )]
printable = [프린터 스풀 사용 여부]
valid users = [공유 디렉터리 접근 사용자 목록. (이 옵션이 없으면 모든 사용자가 접근 가능)]
write list = [그룹의 쓰기 기능 설정]
옵션 | value | 설명 |
comment | (text) | 공유 폴더에 대한 설명 |
path | (text) | 공유 폴더 경로 |
read only | yse/no | 공유 폴더를 읽기 전용으로 설정 |
writable, write ok | yse/no | 공유 폴더를 쓰기 가능으로 설정 |
valid users | (id, id...) | 공유 폴더 접근 가능 유저 목록 |
write list | (id, id...) | 공유 폴더 쓰기 가능 유저 목록 |
public, guest ok | yse/no | 게스트 이용 가능 여부 |
browsable | yse/no | 파일 목록을 보여줄 것인지 여부 |
printable | yse/no | 프린터 스풀 파일 지정 |
create mask, create mode | (0644 / 0777 / ...) | 생성 권한 |
force group | (group, group, ...) | 접근 가능 그룹 지정 |
diretory mask | (0644 / 0777 / ...) | 공유 폴더 권한 |
저는 아래와 같이 정보를 입력하였습니다.
[test]
comment = test
path = /home/test
valid users = test
guest ok = no
browseable = yes
writable = yes
create mask = 0777
4. 삼바 재시작하기
설정한 파일의 내용을 적용하기 위해서 삼바 서버를 재시작합니다.
sudo service smbd restart
5. 윈도우에서 삼바(SAMBA)연결하기
연결하는 방법은 두 가지 있습니다.
탐색기창에서 주소를 직접 입력하여 연결하는 방법 or 네트워크 드라이브를 추가/연결하여 접근하는방법
저는 후자인 네트워크 드라이브를 연결하는 방법으로 설명드리겠습니다.
아래와 같이 네트워크 드라이브 연결을 클릭합니다.
드라이브 선택은 이미 사용중인 드라이브는 사용할 수 없습니다.
폴더란에는 아래와 같은 정보를 입력합니다.
\\[Samba 서버 IP 주소]\[Samba 공유 Section 이름]
그 다음으로는 네트워크 자격 증명 입력 창이 뜨게 됩니다. 여기서 2번째 과정에서 만든 samba서버에 추가한 공유할 계정의 ID와 비밀번호를 입력하면 됩니다.
그러면 정상적으로 섹션에 연결된 것을 확인할 수 있습니다.