블로그이전(http://cionman.tistory.com/)으로 자료를 옮겨 옵니다.
제가 리눅스를 설치 하려는 목적이 개발을 위한 놀이터를 만들고 서버 운용도 경험하면서 집에서 사용할수 있는 파일 서버를 만들기 위함이었습니다.
집의 Windows 운영체제 와 Mac운영체제의 컴퓨터들과 원할하게 파일 공유를 하기 위해 Samba 설정에 도전하였습니다.
1. Samba 패키지 설치
- yum이라는 리눅스 패키지 매니저를 통해 Samba 를 설치하게 됩니다.
- yum 이란? - https://ko.wikipedia.org/wiki/Yum
- 아래의 명령어는 samba로 시작하는 패키지들을 모두 설치하며 설치할지 묻는 여부를 자동으로 y 로 응답하는 옵션을 주었습니다.
$ yum install samba* -y
- 설치 패키지들을 확인해보겠습니다.
$ yum list installed | grep samba
- 설치된 samba 관련 패키지들 입니다.
2. Samba 를 위한 디렉토리 생성
- samba를 운용하기 위한 디렉토리를 만듭니다. 저는 /home/samba 라는 경로에 만들겠습니다.
$ mkdir /home/samba
- 해당 디렉토리의 권한을 모두 실행할 수 있는 권한을 변경해주고 ls -al 명령어로 확인합니다.
- samba 디렉토리에 모든 권한이 주어진 것을 보실 수 있습니다.
$ chmod 777 /home/samba
3. Samba 유저 생성
- Samba를 사용할 전용 user 계정을 생성하고 패스워드를 지정합니다.
$ useradd smbuser
$ passwd smbuser
- samba에 계정을 추가해 줍니다. -a 옵션이 추가한다는 옵션입니다
$ smbpasswd -a smbuser
4. Samba 설정
- samba 설정을 위해 /etc/samba/smb.conf 파일을 vi 에디터로 오픈합니다.
$ vi /etc/samba/smb.conf
- 옵션 내용
- [global] - samba가 공통적으로 사용할 기본 설정 입니다.
- workgroup : 작업 그룹 명
- server string : 윈도우 네트워크에서 보여줄 samba서버에 대한 설명
- hosts allow : samba 서버에 접속을 허용할 ip
- security : 인증 방식 지정 (user, share, server, domain)
- user - 아이디 비번 을 입력하여 접속
- share - 인증 없이 접속
- server - 별도의 인증서버
- domain - 윈도우NT 계열의 도메인 컨트롤러
- [printers] - 네트워크 공유 프린트에 관련한 부분 입니다.
- [global] - samba가 공통적으로 사용할 기본 설정 입니다.
-
좀더 상세한 설정에 대한 부분은 여기 링크를 참고 바랍니다.(http://zack-textcube.blogspot.kr/2010/04/smbconf.html)
- 기본적으로 작성되어 있는 것 이외에 보안을 위해 global 위치에 ‘hosts allow’ 을 추가 하겠습니다.
- 저의 경우는 내부 내트웍에 Samba 가 위치할 예정이고 내부 ip 172.30.1. 로 시작 하는 ip 만 접속 한다는 설정입니다.
hosts allow = 172.30.1.
- 그리고 저희 집 네트웍의 작업 그룹이 ‘WORKGROUP’ 으로 되어 있어 변경토록 하겠습니다.
workgroup = WORKGROUP
- 이제 개별적인 디렉토리를 Samba 에 할당하겠습니다.
- path : Samba 로 사용할 디렉토리 경로
- writable :쓰기 가능
- wirte list : 쓰기 허용할 계정 또는 유저 그룹
- create mask : 생성될 파일들 권한 수준
- diretory mask : 생성될 폴더 권한 수준
[samba] path = /home/samba public = yes writable = yes write list = smbuser create mask = 0777 directory mask = 0777
-
printers와 home 항목은 사용치 않아 삭제하였습니다.
- 이제 Samba 서비스를 부팅시 자동으로 실행되게 설정을 변경합니다.
$ systemctl enable smb
- Samba를 시작합니다.
$ systemctl start smb
- 방화벽 포트를 오픈 합니다. Samba 는 139 포트와 445 포트를 사용합니다
$ firewall-cmd --permanent --add-port=139/tcp $ firewall-cmd --permanent --add-port=445/tcp
- firewall 데몬을 리로드 해주어야 적용이 됩니다
$ firewall-cmd --reload
- 마지막으로 selinux에서 보안 설정을 조정 합니다.
$ setsebool -P samba_enable_home_dirs on $ chcon -t samba_share_t /home/samba
- 이제 다른 PC에서 확인해봅시다.
수고하셨습니다 ㅎ 부족한점 있으면 지적 부탁 드립니다. 다음 번에는 MariaDB설치편을 작성하겠습니다~