본문 바로가기
Linux

Rocky Linux 8.8 SAMBA 설치 및 Log 설정

by 졸린하루 2023. 12. 12.

1. SAMBA 설치
- 해당 명령어를 이용하여 smaba를 설치한다.
[root@rocky8.8 ~]# yum install samba

- 디렉터리 및 유저, 그룹 생성
[root@rocky8.8 ~]#  mkdir /samba_share
[root@rocky8.8 ~]#  chmod 777 /samba_share
[root@rocky8.8 ~]#  useradd samba_user
[root@rocky8.8 ~]#  passwd samba_user
[root@rocky8.8 ~]#  groupadd smbgroup
[root@rocky8.8 ~]#  chgrp smbgroup /samba_share
[root@rocky8.8 ~]#  usermod -a -G smbgroup samba_user

- 유저의 패스워드 설정
[root@rocky8.8 ~]#  smbpasswd -a samba_user

- 기존의 smb.conf 복사
[root@rocky8.8 ~]#  cp /etc/samba/smb.conf /etc/samba/smb.conf_bak

- 맨 아래에 해당 내용대로 설정
[root@rocky8.8 ~]#  vi /etc/samba/smb.conf

[share]
         comment = samba directory
         path = /samba_share
         read only = no
         writable = yes
         create mask = 0777
         directory mask = 0777
         valid users = @smbgroup

해당 그림처럼 설정한다.



- 접속 계정 디렉터리가 나타나지 않게 하기 위해서는 homes 부분을 모두 주석처리
#[homes]
#       comment = Home Directories
#       valid users = %S, %D%w%S
#       browseable = No
#       read only = No
#       inherit acls = Yes

해당 그림처럼 설정한다.



- samba 방화벽 설정 및 selinux 설정
[root@rocky8.8 ~]#  firewall-cmd --permanent --add-service=samba
[root@rocky8.8 ~]#  firewall-cmd --permanent --zone=public --add-port=138/udp
[root@rocky8.8 ~]#  firewall-cmd --permanent --zone=public --add-port=449/udp
[root@rocky8.8 ~]#  firewall-cmd --reload
[root@rocky8.8 ~]#  setsebool -P samba_export_all_rw on

- 방화벽 및 selinux 를 모두 끄실려면 아래 방법
[root@rocky8.8 ~]#  systemctl stop firewalld
[root@rocky8.8 ~]#  systemctl disable firewalld
[root@rocky8.8 ~]#  systemctl status firewalld
[root@rocky8.8 ~]#  getenforce

- 서비스 시작
[root@rocky8.8 ~]#  systemctl restart smb.service
[root@rocky8.8 ~]#  systemctl enable smb.service
[root@rocky8.8 ~]#  systemctl restart nmb.service
[root@rocky8.8 ~]#  systemctl enable nmb.service


2. SAMBA Log 설정 법
- global 밑에 log file 부터 ALERT 까지 추가 (global 부분은 모두 기본 상태이다)
[root@rocky8.8 ~]#  vi /etc/samba/smb.conf

[global]
        workgroup = SAMBA
        security = user

        passdb backend = tdbsam

        printing = cups
        printcap name = cups
        load printers = yes
        cups options = raw

        # Install samba-usershares package for support
#       include = /etc/samba/usershares.conf
        log file = /var/log/samba/log.%m
        log level = 3
        idmap config* : backend = tdb

        vfs objects = full_audit

        # Audit settings
        full_audit:prefix = %u|%I|%m|%S
        full_audit:success = connect open read pread write pwrite
        full_audit:failure = none
        full_audit:facility = LOCAL5
        full_audit:priority = ALERT

해당 그림처럼 설정한다.


- syslog.conf 파일도 수정
[root@rocky8.8 ~]#  vi /etc/rsyslog.conf
# samba log
local5.*                        /var/log/samba/log.audit

- rsyslog 방화벽 설정
[root@rocky8.8 ~]#  firewall-cmd --permanent --add-port=514/tcp
[root@rocky8.8 ~]#  firewall-cmd --permanent --add-port=514/udp
[root@rocky8.8 ~]#  firewall-cmd --reload

- samba 서비스 재시작
[root@rocky8.8 ~]#  systemctl restart smb.service
[root@rocky8.8 ~]#  systemctl enable smb.service
[root@rocky8.8 ~]#  systemctl restart nmb.service
[root@rocky8.8 ~]#  systemctl enable nmb.service