우분투에서 samba를 이용해서 파일공유 사용하기
파일을 공유하려는 서버에서 아래와 같이 삼바 패키지를 설치한다.
sudo apt-get install samba smbfs
이 공유에 접근할 아이디와 비밀번호를 설정한다.
sudo smbpasswd -a 아이디
접근 아이디를 지울 때는 다음과 같이 한다.
sudo smbpasswd -x system_username
삼바 서버를 설정하기 위해 문서 편집기로 설정파일을 연다.
sudo vim /etc/samba/smb.conf
그 안에 다음과 같은 내용을 입력한다.
# 기본적인 설정
[global]
# 워크그룹이름은 맘대로 정한다.
workgroup = WORKGROUP
encrypt passwords = yes
# 접근을 허락할 아이피 범위
hosts allow = 192.168.
# 문자 인코딩 설정, 우분투는 utf-8을 기본적으로 사용하고
# 이것이 윈도우즈에서도 한글이 잘 깨지지 않는다.
unix charset=utf-8
dos charset=utf-8
#공유할 디렉토리 이름, 이것은 여러개를 만들 수도 있다.
[MyDoc]
comment = My Documents
path = /공유할/디렉토리
#읽기 전용으로 접근할지 여부
read only = no
browsable = yes
삼바의 설정은 매우 다양하게 할 수 있다.
아래에 다양한 삼바 설정을 설명했다.
삼바 설정이 끝났으면, 설정이 제대로 되었는지 검사한다.
sudo testparm
문제가 없으면 삼바를 실행한다.
sudo /etc/init.d/samba restart
우분투에서 패키지로 설치된 삼바는 컴퓨터가 켜질 때마다 실행될 것이다.
우분트 클라이언트에서 공유에 접근하는 법은 두가지이다.
첫째)
위치 메뉴 > 서버에 연결 을 선택한 후,
서비스 종류는 Windows공유를 지정하고,
사용자 이름과 연결에 사용할 이름 부분만 위에서 지정한 네트워크사용자아이디를 지정하면 된다.
둘째)
mount -t cifs //삼바서버아이피/삼바공유폴더이름 /공유가/지정될/로컬폴더 -o username=네트워크사용자아이디,password=비밀번호,iocharset=utf8,file_mode=0777,dir_mode=0777
-o 이후로는 띄어쓰기를 해서는 안된다.
윈도우즈에서 삼바 서버에 접근하려면,
네트워크 환경에서 새 연결을 설정하거나,
net use o: \\삼바서버아이피\삼바공유폴더이름 비밀번호 /user:네트워크사용자아이디
로 연결하면 되고,
삭제는 net use o: /delete
로 하면 된다.
====================================================================================
그외의 다양한 삼바 설정법은 다음과 같다.
▶ 네트워크 사용자 추가/편집/삭제 하는 법
☞ 네트워크 사용자 추가하기
sudo smbpasswd -a 네트워크사용자아이디
sudo vim /etc/samba/smbusers 를 한 후에, 아래의 내용을 추가한다.
네트워크사용자아이디 = "network username"
☞ 네트워크 사용자 편집
sudo smbpasswd -a 네트워크사용자아이디
☞ 네트워크 사용자 삭제
sudo smbpasswd -x 네트워크사용자아이디
----------------------------------------------------------------------------------
▶ 읽기 전용으로 폴더 공유하기 (인증=Yes)
sudo vim /etc/samba/smb.conf 로 설정파일을 열고
아래의 내용을 찾아서
security = user
아래처럼 바꾼다
security = user
username map = /etc/samba/smbusers
아래 내용의 앞에 있는 주석 표시를 제거한다.
;[homes]
;comment = Home Directories
;browseable = no
;valid users = %S
;writable = yes
삼바설정을 확인한다.
sudo testparm
삼바를 다시 시작한다.
sudo /etc/init.d/samba restart
----------------------------------------------------------------------------------
▶ 읽기/쓰기 권한으로 폴더 공유하기 (인증=Yes)
설정파일 안의 지정된 폴더에 아래의 옵션을 넣어준다.
(보기)
[MyFolder]
path = /home/my_id/my_shared_folder
writable = yes
----------------------------------------------------------------------------------
▶ 그룹 폴더들을 읽기 전용으로 공유하기 (인증=Yes)
sudo mkdir /home/group
sudo chmod 777 /home/group/
sudo vim /etc/samba/smb.conf
설정파일에서 아래의 내용을
security = user
아래처럼 바꾸고
security = user
username map = /etc/samba/smbusers
설정파일의 끝에 아래의 내용을 추가한다.
[Group]
comment = Group Folder
path = /home/group
public = yes
writable = no
valid users = system_username1 system_username2
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup
----------------------------------------------------------------------------------
▶ 그룹 폴더를 읽기/쓰기 권한으로 공유하기 (인증=Yes)
설정파일의 끝에 추가된 그룹 설정을 아래처럼 바꾼다.
[Group]
comment = Group Folder
path = /home/group
public = yes
writable = yes
valid users = system_username1 system_username2
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup
----------------------------------------------------------------------------------
▶ 공개 폴더를 읽기 전용으로 공유하기 (인증=Yes)
[global]
security = share
[public]
comment = Public Folder
path = /home/public
public = yes
writable = no
create mask = 0777
directory mask = 0777
force user = nobody
force group = nogroup
아래처럼 nobody 계정을 만든다.
sudo smbpasswd nobody
----------------------------------------------------------------------------------
▶ 공개 폴더를 읽기/쓰기 권한으로 공유하기 (인증=Yes)
[global]
security = share
[public]
comment = Public Folder
path = /home/public
public = yes
writable = yes
create mask = 0777
directory mask = 0777
force user = nobody
force group = nogroup
----------------------------------------------------------------------------------
▶▶▶ 네트워크 프린터에서 인쇄하기
삼바 설정파일에 다음의 내용을 추가하고
printing = cups
printcap name = cups
프린터 관리 서비스를 다시 시작한다.
sudo /etc/init.d/cupsys restart
----------------------------------------------------------------------------------
▶▶▶ 웹을 통해 삼바 설정 관리하기 : SWAT : Samba Web Administration Tool
▶ INETD과 SWAT 를 설치한다.
sudo apt-get install netkit-inetd
sudo apt-get install swat
☞ inetd daemon 설정을 편집한다.
sudo vim /etc/inetd.conf
☞ 아래의 내용을 찾아서
<#off#> swat stream tcp nowait.400 root /usr/sbin/tcpd /usr/sbin/swat
☞ 아래처럼 바꾸어 준다.
swat stream tcp nowait.400 root /usr/sbin/swat swat
☞ 대몬을 재시작한다.
sudo /etc/init.d/inetd restart
☞ 만일, root비밀번호를 설정하지 않았다면, 아래처럼 설정한다.
sudo passwd root
☞ http://localhost:901 주소로 접속한다.
파일을 공유하려는 서버에서 아래와 같이 삼바 패키지를 설치한다.
sudo apt-get install samba smbfs
이 공유에 접근할 아이디와 비밀번호를 설정한다.
sudo smbpasswd -a 아이디
접근 아이디를 지울 때는 다음과 같이 한다.
sudo smbpasswd -x system_username
삼바 서버를 설정하기 위해 문서 편집기로 설정파일을 연다.
sudo vim /etc/samba/smb.conf
그 안에 다음과 같은 내용을 입력한다.
# 기본적인 설정
[global]
# 워크그룹이름은 맘대로 정한다.
workgroup = WORKGROUP
encrypt passwords = yes
# 접근을 허락할 아이피 범위
hosts allow = 192.168.
# 문자 인코딩 설정, 우분투는 utf-8을 기본적으로 사용하고
# 이것이 윈도우즈에서도 한글이 잘 깨지지 않는다.
unix charset=utf-8
dos charset=utf-8
#공유할 디렉토리 이름, 이것은 여러개를 만들 수도 있다.
[MyDoc]
comment = My Documents
path = /공유할/디렉토리
#읽기 전용으로 접근할지 여부
read only = no
browsable = yes
삼바의 설정은 매우 다양하게 할 수 있다.
아래에 다양한 삼바 설정을 설명했다.
삼바 설정이 끝났으면, 설정이 제대로 되었는지 검사한다.
sudo testparm
문제가 없으면 삼바를 실행한다.
sudo /etc/init.d/samba restart
우분투에서 패키지로 설치된 삼바는 컴퓨터가 켜질 때마다 실행될 것이다.
우분트 클라이언트에서 공유에 접근하는 법은 두가지이다.
첫째)
위치 메뉴 > 서버에 연결 을 선택한 후,
서비스 종류는 Windows공유를 지정하고,
사용자 이름과 연결에 사용할 이름 부분만 위에서 지정한 네트워크사용자아이디를 지정하면 된다.
둘째)
mount -t cifs //삼바서버아이피/삼바공유폴더이름 /공유가/지정될/로컬폴더 -o username=네트워크사용자아이디,password=비밀번호,iocharset=utf8,file_mode=0777,dir_mode=0777
-o 이후로는 띄어쓰기를 해서는 안된다.
윈도우즈에서 삼바 서버에 접근하려면,
네트워크 환경에서 새 연결을 설정하거나,
net use o: \\삼바서버아이피\삼바공유폴더이름 비밀번호 /user:네트워크사용자아이디
로 연결하면 되고,
삭제는 net use o: /delete
로 하면 된다.
====================================================================================
그외의 다양한 삼바 설정법은 다음과 같다.
▶ 네트워크 사용자 추가/편집/삭제 하는 법
☞ 네트워크 사용자 추가하기
sudo smbpasswd -a 네트워크사용자아이디
sudo vim /etc/samba/smbusers 를 한 후에, 아래의 내용을 추가한다.
네트워크사용자아이디 = "network username"
☞ 네트워크 사용자 편집
sudo smbpasswd -a 네트워크사용자아이디
☞ 네트워크 사용자 삭제
sudo smbpasswd -x 네트워크사용자아이디
----------------------------------------------------------------------------------
▶ 읽기 전용으로 폴더 공유하기 (인증=Yes)
sudo vim /etc/samba/smb.conf 로 설정파일을 열고
아래의 내용을 찾아서
security = user
아래처럼 바꾼다
security = user
username map = /etc/samba/smbusers
아래 내용의 앞에 있는 주석 표시를 제거한다.
;[homes]
;comment = Home Directories
;browseable = no
;valid users = %S
;writable = yes
삼바설정을 확인한다.
sudo testparm
삼바를 다시 시작한다.
sudo /etc/init.d/samba restart
----------------------------------------------------------------------------------
▶ 읽기/쓰기 권한으로 폴더 공유하기 (인증=Yes)
설정파일 안의 지정된 폴더에 아래의 옵션을 넣어준다.
(보기)
[MyFolder]
path = /home/my_id/my_shared_folder
writable = yes
----------------------------------------------------------------------------------
▶ 그룹 폴더들을 읽기 전용으로 공유하기 (인증=Yes)
sudo mkdir /home/group
sudo chmod 777 /home/group/
sudo vim /etc/samba/smb.conf
설정파일에서 아래의 내용을
security = user
아래처럼 바꾸고
security = user
username map = /etc/samba/smbusers
설정파일의 끝에 아래의 내용을 추가한다.
[Group]
comment = Group Folder
path = /home/group
public = yes
writable = no
valid users = system_username1 system_username2
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup
----------------------------------------------------------------------------------
▶ 그룹 폴더를 읽기/쓰기 권한으로 공유하기 (인증=Yes)
설정파일의 끝에 추가된 그룹 설정을 아래처럼 바꾼다.
[Group]
comment = Group Folder
path = /home/group
public = yes
writable = yes
valid users = system_username1 system_username2
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup
----------------------------------------------------------------------------------
▶ 공개 폴더를 읽기 전용으로 공유하기 (인증=Yes)
[global]
security = share
[public]
comment = Public Folder
path = /home/public
public = yes
writable = no
create mask = 0777
directory mask = 0777
force user = nobody
force group = nogroup
아래처럼 nobody 계정을 만든다.
sudo smbpasswd nobody
----------------------------------------------------------------------------------
▶ 공개 폴더를 읽기/쓰기 권한으로 공유하기 (인증=Yes)
[global]
security = share
[public]
comment = Public Folder
path = /home/public
public = yes
writable = yes
create mask = 0777
directory mask = 0777
force user = nobody
force group = nogroup
----------------------------------------------------------------------------------
▶▶▶ 네트워크 프린터에서 인쇄하기
삼바 설정파일에 다음의 내용을 추가하고
printing = cups
printcap name = cups
프린터 관리 서비스를 다시 시작한다.
sudo /etc/init.d/cupsys restart
----------------------------------------------------------------------------------
▶▶▶ 웹을 통해 삼바 설정 관리하기 : SWAT : Samba Web Administration Tool
▶ INETD과 SWAT 를 설치한다.
sudo apt-get install netkit-inetd
sudo apt-get install swat
☞ inetd daemon 설정을 편집한다.
sudo vim /etc/inetd.conf
☞ 아래의 내용을 찾아서
<#off#> swat stream tcp nowait.400 root /usr/sbin/tcpd /usr/sbin/swat
☞ 아래처럼 바꾸어 준다.
swat stream tcp nowait.400 root /usr/sbin/swat swat
☞ 대몬을 재시작한다.
sudo /etc/init.d/inetd restart
☞ 만일, root비밀번호를 설정하지 않았다면, 아래처럼 설정한다.
sudo passwd root
☞ http://localhost:901 주소로 접속한다.
'Server Story.... > ubuntu' 카테고리의 다른 글
ubuntu ssh 접속 딜레이 없애기. (0) | 2012.02.14 |
---|---|
ubuntu 에서 한글 zip 파일 압축 풀때 깨짐 증상 (0) | 2012.01.26 |
Alias 사용법 및 logrotate 사용법 (0) | 2011.03.18 |
중복로그인 실패시 자동 ip 거부 등록 우분투 fail2ban (0) | 2011.01.30 |
sshd TCP Wrapper(hosts.deny) 적용하기 (0) | 2011.01.30 |