Linux에서 Samba는 SMB(Server Message Block)이라는 네트워크 프로토콜로,
WIndows와 Linux 계열 간에 파일 및 프린터를 공유하게 해주는 프로토콜입니다.
Windows에서 Samba 서비스를 올리면, Linux에서 Windows로 연결해서 파일을 가져올 수 있습니다.
반대로 Linux에서 Samba 서비스를 올리면, Windows에서 Linux로 연결해서 파일을 가져올 수 있습니다.
즉 SMB 프로토콜을 이용하면, 서로 다른 OS 간에 파일과 프린터를 공유할 수 있습니다.
이 글에서는 Rocky Linux 9.2에서 Samba 서버를 설치해 보겠습니다.
1. samba 패키지 설치
dnf 명령어로 samba 패지키를 설치합니다.
참고로 dnf 명령어로 패키지 설치를 위해서는 리눅스 서버가 인터넷이 되거나, Local yum이 구성되어야 합니다.
중간에 Is this ok [y/Y]: 질문에 y를 눌러줘야 설치가 진행됩니다.
# dnf install samba samba-common samba-client
마지막에 "Complete!"가 표시되어야 합니다.
2. 공유 디렉토리 생성
데이터를 공유할 디렉토리를 생성하고, 권한을 지정합니다.
# mkdir /sambadata
# chmod 777 /sambadata
3. samba 계정 생성
samba 공유에 접속할 계정을 생성하고, samba 패스워드를 설정합니다.
# useradd sambauser01
# smbpasswd -a sabauser01 (비밀번호 2번 입력)
4. smb.conf 설정
생성한 share 디렉토리를 공유하기 위해서 "/etc/samba/smb.conf"에 공유 설정을 넣어야 합니다.
vi 명령어로 공유 정보를 추가하고 저장합니다.
공유이름은 share로 만들어보겠습니다.
# vi /etc/samba/smb.conf
path | 공유 디렉토리 경로 |
browseable | 탐색기에서 공유 디렉토리가 보여지는지 여부 |
writable | 공유 디렉토리 쓰기 전용 설정 여부 |
guest ok | 일반 사용자 접근 가능 여부 |
read ony | 공유 디렉토리 읽기 전용 설정 여부 |
create mask | 공유 디렉토리에서 사용자가 파일 생성시 권한 설정 |
directory mask | 공유 디렉토리에서 사용자가 폴더 생성시 권한 설정 |
5. samba 서비스 시작
systemctl start 명령어로 samba 서비스를 시작합니다.
systemctl enable 명령어로 OS가 부팅될 때 서비스가 시작되게 설정합니다.
# systemctl start smb
# systemctl enable smb
# systemctl start nmb
# systemctl enable nmb
아래 명령어로 현재 samba 서비스 상태를 확인합니다.
# systemctl status smb
# systemctl status nmb
6. 방화벽에서 Samba 서비스 포트 열기
방화벽 서비스를 전체 OFF 할 수 있지만, 별로 권장하지 않습니다.
아래와 같은 명령어로 방화벽에 samba 서비스 포트만 열어줍니다.
# firewall-cmd --permanent --add-service=samba
# firewall-cmd --reload
# firewall-cmd --list-services
7. Selinux를 OFF 설정 후 재부팅
마지막으로 Selinux를 OFF 합니다.
아래 경로의 파일 내용에서 "SELINUX = disabled"로 수정 후 재부팅합니다.
# vi /etc/selinux/config
8. Windows에서 네트워크 드라이브 접속하기
Windows 실행창 또는 검색창에서 Samba서버 IP를 아래와 같이 입력합니다.
접속하면 Samba 계정 및 암호를 요구합니다.
설정한 계정 및 암호를 입력합니다.
설정한, Share 공유가 보입니다.
이로써 Samba 공유 설정이 끝났습니다.
'OS & Software > Linux' 카테고리의 다른 글
Rocky Linux에서 FTP 설치 및 설정 방법 (2) | 2023.10.31 |
---|---|
Rocky Linux에서 Local yum Repository 만들기 (Local DNF Repository) (0) | 2023.10.26 |