본문 바로가기
넷칼리지

LINUX SAMBA

by 북한산산적 2009. 5. 21.
SAMBA : 파일/프린터 공유를 제공 하는 Open Source/Free Software
이기종 시스템 (O/S)간 의 자원 (파일/프린터)공유
Windows 계열과 Linux (혹은 Unix) 계열 시스템간의 자원 공유 목적

SAMBA Server 설치
(www.samba.org)
SAMBA Server 관련 패키지 확인
rpm -qa |grep samba

SAMBA Server 구축 관련 패키지 설치

samba :samba server 구성 관련 패키지
samba-client : samba 클라이언트 관련 패키지
system-config-samba : samba server configuration tool 관련 패키지
samba-common : smaba server& client 모두 사용하는 파일 관련 패키지
samba-swat : samba server 웹관리 패키지

설치가 안된 패키지의 설치 
cd-rom 으로 설치

/media/cdrom/CentOS/RPMS
 
#ls |grep samba 로 검색 하여 설치한다

rpm -ivh samba-common-(버젼).rpm
rpm -ivh samba-(버젼).rpm


SAMBA Server 주요파일 

/usr/sbin/smdb  : 사용자 인증과 windows와 의 자원 공유를 담당하는 samba server의 주요 데모
/user/sbin/nmbd : windows의 wins service를 제공하는 데몬
/etc/samba/smbusers : Linux id 와 samba id가 다를 경우 이를 매칭 하기 위한 매칭 테이블 파일
/usr/bin/smbpasswd :samba 계정 생성, 삭제 ,passwd 설정및 변경 명령
/usr/sbin/smbcilent : windows 의 공유 자원에 linux가 접근할 때 사용하는 명령어
/usr/bin/smbmount : windows 의 공유 자원을 linux 에서 mount 할 때 사용하는 명령어
/usr/bin/smbstatus : 현재 smaba server 의 연결 상태를 확인하는 명령어
/var/log/samba : samba server log 를 저장할 디렉토리
/etc/samba/smb.conf : samba server 의 환경 설정파일
/usr/bin/testparm : samba 의 환경 설정 파일 /etc/samba/smb.conf 정상적으로 되었는지 확인 하는 명령어 



SAMBA Server 환경 설정 방법
/etc/samba/smb.conf 직접수정
gui 환경 (system-config-samba)를 이용한 수정

[Global Settiong], [Share Definitions] 두영역으로 구분

Global Settiong : samba server 의 전체 설정을 정의하는 섹션
Share Definitions : samba server 의 공유 설정을 정의 하는 섹션



/etc/samba/smb.conf

workgroup = windows 시스템의 작업 그룹 이름과 동일하게 설정
windows 작업 그룹 이름 확인 : 내컴퓨터 우클릭 ->속성 ->컴퓨터 이름

server strion = windows 작업그룹창 에서 보여지는 samba server에 대한 설명
netbios name 
linux 가 windows 의 network에 참가하면서 사용하는 컴퓨터 이름
interfaces =
linux server network interface가 여러개일 경우 samba server 가 사용할 
interface 지정
hosts allow =
samba server로 접근을 허용할 hosts 지정
192.168.0. :192.168.0. 네트워크에 속해 있는 모든 호스트들의 접속을 허용
192.168.0.0/255.255.255.128 : 192.168.0.0 네트워크에 속한 호스트들중 일부만 접속을 허용ㅇ
log file =
samba server에 접속 하는 시스템들의 접속 로그 파일 생성
max log size = 
로그파일의 최대 크기를 설정
0으로 설정하면 로그 파일의 크기를 제한하지 않음
설정된 크기로 로그파일이 만들어지면 .old 확장자로 저장되고 새로운 로그파일을 기록
security =
samba server에 접속하고자 하는 모든 호스트들의 보안 레벨을 설정하는 항목
user : 기본값 ,client 의 접근시 samba server에서 설정한 samba계정을 이용하여 접근
share : username/password 를 입력하는 인증과정 없이 client 가 samba server 에 접속

passdb backend =
SAMBA 계정이 저장하는 방법을 지정
tdbsam : passdb.tdb 파일로 계정 정보 저장 
smbpasswd :smbpasswd 파일로 계정 정보를 저장 
encrypt password =
password 의 암호화를 위한 설정
smb passwd file =
사용자의 username/password가 저장되는 경로 및 파일명 지정
Share Definitions 설정 (samba service 의 공유설정을 정의하는 섹션)
comment =
공유에 대한 설명 입력
path =
samba server 에서 실제 공유하는 디렉토리의 경로 설정
browseable = 
브라우저에 공유 이름 표시 여부 설정
public =
모든 사용자에게 접근을 허용할 것인지에 대한 여부를 설정
read only =
SAMBA Client 에게 일기전용 권한을 줄것인지에 대한 여부를 설정
valid users =
특정 사용자에게만 접근을 허용할 경우에 사용자의 username 설정
writeable =
SAMBA Client 에게 쓰기 권한을 줄것인지 여부 설정
#service smb status  -------------(samba server 의 상태를 확인)
#service smb start|stop ----------(samba server 의 실행/정지)
#testparm
SAMBA 계정관리
smb.conf 파일에서 security = user 설정일 경우 SAMBA 계정 필요
#useradd smbuser
#smbpasswd -a smbuser     ------ samba 계정 암호 생성
#smbpasswd -d smbuser     ------ samba 계정 사용 중지
#smbpasswd -e smbuser     ------ smaba 계정으로 재사용
#smbpasswd -x smbuser     ------ samba 계정삭제