Samba(삼바)란? |
리눅스에서 윈도우 시스템에게 파일시스템을 공유하기 위한 프로그램이다. SMB/CIFS 네트워크 프로토콜을 재구현한 프로그램이다. 즉 리눅스의 파일시스템이나 프린트를 윈도우에게 공유할 수 있게 해준다. |
설치(centos 기준) |
$ yum install samba |
실행 및 중지 |
$ service smb start $ service smb stop |
설정 |
/etc/samba/smb.conf 변경 아래의 설정 설명은 http://blog.nextcube.pe.kr/126 에서 가지고 왔다. |
리눅스 계정 사용자들이 홈디렉토리를 로그인홈으로 사용하기 위한 설정
[home]으로 선언된 부분에 정의
프린터 설정
네트워크 공유프린터에 대한 설정
[printers]으로 선언된 부분에 정의
주석처리 # , ;
# 이나 ; 으로 시작되는 구문은 주석처리
[] 행
섹션을 정의
하나의 섹션이 정의된 후 그 다음 섹션이 정의될때까지의 행들이 해당 섹션에 속함
name=value 행
사용하는 옵션과 해당값을 설정
- 글로벌설정
삼바서버가 공유하는 자원들에게 공통적으로 적용할 기본값 설정
[global] 이라고 선언된 부분에 정의
[]사이에 값으로 섹션 정의
워크그룹 설정
삼바서버의 이름 설정
삼바서버로의 접근을 허용하기 위한 IP 설정
자동프린터 목록을 사용하기 위한 값 설정
네트워크 프린터를 삼바서버에서 관리하도록 하려면 yes 로 설정
printcap 파일의 위치 설정
/etc/printcap 위치에 있으며, 리눅스의 프린터 설정 파일
프린터 시스템 설정
bsd, sysv, plp, lprng, aix, hpux, qnx 등이 있음
삼바서버에 손님권한으로 접근하였을때의 권한설정
삼바서버로 접속하는 개별 사용자들의 호스트정보를 %m 으로 받아서 개별 로그파일을 생성
로그파일의 최대 용량제한 (kb), 0이면 제한 없음
보안모드 설정
user : 삼바서버에 접속하는 사용자는 윈도우에 사용하는 로그인 ID와 동일해야함
share : 공유디렉토리와 같은 인증없이 접근가능함
server : 별도의 인증서버에서 인증
Securiy 옵션이 server로 설정되었을 시에 인증서버로 사용한 서버를 지정
패스워드 문자로 대소문자를 조합하여 사용할 문자개수 지정
유저명 문자로 대소문자를 조합하여 사용할 문자개수 지정
패스워드 암호화
삼바서버 유저들의 패스워드파일 위치 지정
Passwd program = /usr/bin/passwd %u
Passwd chat = *New*UNIX*password* %nn *ReType*new*UNIX*password* %nn
*passwd:*all*authentication*tokens*updated*successfully*
원격지에서 삼바패스워드를 변경할수 있도록 하기위한 설정
삼바서버 유저명과 리눅스 계정명을 다르게 사용할경우 매칭 테이블 파일을 지정
삼바서버 접속자의 플랫폼에 따라서 각기 다른 설정 파일을 적용
%m은 접속자 시스템의 NetBIOS 이름
삼바서버의 두개이상의 네트워크 인터페이스를 사용하기 위한 옵션
각 플레폼별 또는 각 사용자별로 로그온 스크립트(login script)를 구분하여 사용
윈도우 인터넷 네임서비스인 WINS를 지원
Wins서버를 지정
Dns의 nslookup을 사용하여 netbios이름을 찾을 것인가 아닌가를 지정하는 옵션
Short preserve case = no
대소문자를 유지 보존할 것인가를 지정하는 옵션.
시스템의 기본값은 no 입니다. 이 설정은 각각의 공유마다 별도로 설정 가능
Dos파일들의 기본 문자는 대문자로 인식
만약 lower로 설정한다면 소문자로 인식
대소문자의 구분을 할것인가 말것인가를 지정하는 옵션.
특정 사용자만 공유 폴더에 접근할 수 있도록 허용하는 명령
설정하지 않으면 어떠한 사용자라도 접근
콤마(,) 로 구분
파일을 생성할 때의 모드를 umask 결정
쓰기가 가능한 특정 사용자를 지정
읽고 쓰기 가능
섹션의 코멘트 설정
기본 홈디렉토리 설정
설정 예) |
# near line 58: add unix charset = UTF-8 dos charset = CP932 # line 75: change (Windows' default) # line 81: uncomment and change IP address you allow # line 102: change (no auth) # add at the bottom [Share]# any name you like |
기타 사항 (해결법)
net 명령어로 samba 서버에 연결된 윈도우에서 세션 끊기 |
1. 윈도우 콘솔창을 연다. 2. net use 명령으로 세션을 확인한다. 3. net use \\ip\path /delete 로 세션을 종료한다. 예) > net use 상태 로컬 원격 네트워크 > net use \\192.168.0.1\test /delete 주의 네트워크 드라이브로 연결되어 있는 세션은 먼저 네트워크 드라이브 연결을 해제해야한다. |
방화벽 끄기 |
방법1. system-config-firewall 방법2. service iptables stop ; service ip6tables stop |
selinux 끄기 |
임시방법 : setenforce 0 지속방법 : vi /etc/selinux/config 후 SELINUX=enforcing 부분을 SELINUX=disabled 로 바꾼다. |
사용자 추가하기 (id 만들기) |
사용자 추가하기 : smbpasswd -a username 삼바의 경우 사용자를 자체관리하지만 linux 기본 사용자를 기반으로 사용자를 만들수 있다. 다시 말해 linux 에 등록된 사용자만이 삼바 사용자로 추가될 수 있다. 만약 linux 사용자에 없는 사용자를 삼바에 추가하려 한다면 아래의 오류가 출력된다. [root@/ ]# smbpasswd -a test |
'학습자료(~2017) > 리눅스' 카테고리의 다른 글
[Linux] 메모리 캐쉬 삭제하기 (0) | 2013.02.28 |
---|---|
[LINUX]ext3, ext4 크기 확장 - Resize an ext3, ext4 (2) | 2013.02.01 |
데이터 모델(플래폼별 데이터 타입의 크기) (0) | 2012.12.27 |
[리눅스] 프로세스 추적(디버그) 개발 방법에 도움이 되는 글 (1) | 2012.12.04 |
[리눅스] HOWTO : Creating a Dynamic MOTD in Linux (로그인시 설정 화면 출력) (1) | 2012.10.22 |