웹사이트 검색

Windows에서 파일 공유를 위해 RHEL 8에 Samba4 설치


SambaSMB/CIFS 프로토콜을 사용하는 모든 클라이언트에게 파일 공유 및 인쇄 서비스를 제공하는 빠르고 안전하며 안정적이며 널리 사용되는 오픈 소스 네트워크 파일 시스템입니다. Linux, 모든 버전의 DOS 및 Windows, OS/2 및 기타 많은 운영 체제.

이전 기사에서는 CentOS/RHEL 시스템과 Windows 시스템 간의 기본 파일 공유를 위해 CentOS/RHEL 7에 Samba4를 설치하는 방법을 설명했습니다. 여기서 우리는 익명 및 컴퓨터 간 안전한 파일 공유를 위해 Samba를 구성하는 방법을 배웠습니다.

이 문서에서는 Windows 시스템과의 기본 파일 공유를 위해 RHEL 8Samba4를 설치하고 구성하는 방법을 설명합니다.

RHEL 8에 Samba4 설치

1. 종속 항목과 함께 Samba 4를 설치하려면 표시된 대로 DNF 패키지 관리자를 사용하세요.

dnf install samba samba-client samba-common

2. 설치가 완료되면 Sambe 서비스를 시작하고 시스템 부팅 시 자동 시작되도록 활성화한 후 다음과 같이 systemctl 명령을 사용하여 해당 서비스를 확인합니다.

systemctl start smb
systemctl enable smb
systemctl status smb

3. 다음으로, 방화벽이 구성되어 있는 경우 시스템을 통해 공유 디렉터리 및 파일에 대한 액세스를 허용하려면 방화벽 구성에 Samba 서비스를 추가해야 합니다.

sudo firewall-cmd --permanent --add-service=samba
sudo firewall-cmd --reload

RHEL 8에서 Samba4 구성

4. 파일 공유를 위해 Samba를 구성하려면 사전 구성 설정 및 다양한 구성 지시어와 함께 제공되는 기본 Samba 구성 파일의 백업 복사본을 만들어야 합니다.

cp /etc/samba/smb.conf /etc/samba/smb.conf.orig

이제 아래 설명된 대로 익명의 보안 파일 공유 서비스를 위해 Samba를 구성하는 작업을 계속 진행합니다.

RHEL 8에서 Samba4 익명 파일 공유 설정

5. 이 섹션의 첫 번째 단계는 서버에 파일을 저장할 공유 디렉터리를 만드는 것입니다. 그런 다음 표시된 대로 디렉터리에 대한 적절한 권한을 정의합니다.

mkdir -p /srv/samba/anonymous
chmod -R 0777 /srv/samba/anonymous
chown -R nobody:nobody /srv/samba/anonymous

6. 다음으로 chcon 유틸리티를 사용하여 생성된 Samba 공유 디렉터리에 대한 SELinux 보안 컨텍스트를 변경합니다.

 
chcon -t samba_share_t /srv/samba/anonymous

7. 이제 선호하는 텍스트 기반 파일 편집기를 사용하여 구성 파일을 열어 공유 디렉터리에서 익명의 보안되지 않은 파일 공유를 구성합니다.

vim /etc/samba/smb.conf

다음 전역 매개변수를 수정하고 익명 공유에 대한 섹션을 추가합니다. 필요한 경우 자신만의 값을 설정할 수 있습니다(자세한 내용은 man smb.conf 참조).

[global]
        workgroup = WORKGROUP
        netbios name = rhel
        security = user
...
[Anonymous]
        comment = Anonymous File Server Share
        path = /srv/samba/anonymous
        browsable =yes
        writable = yes
        guest ok = yes
        read only = no
        force user = nobody

파일의 변경 사항을 저장하고 닫습니다.

8. 그런 다음 다음 명령을 실행하여 구성이 올바른지 확인합니다.

testparm 
Load smb config files from /etc/samba/smb.conf 
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) 
Unknown parameter encountered: "netbios" 
Ignoring unknown parameter "netbios" 
Processing section "[homes]" 
Processing section "[printers]" 
Processing section "[print$]" 
Processing section "[Anonymous]" 
Loaded services file OK. 
Server role: ROLE_STANDALONE 

Press enter to see a dump of your service definitions 

Global parameters 
[global] 
       printcap name = cups 
       security = USER 
       idmap config * : backend = tdb 
       cups options = raw 
[homes] 
       browseable = No 
       comment = Home Directories 
       inherit acls = Yes 
       read only = No 
       valid users = %S %D%w%S 

[printers] 
       browseable = No 
       comment = All Printers 
       create mask = 0600 
       path = /var/tmp 
       printable = Yes                                                                                                                           
                                                                                                                          
[print$]                                                                                                                                
       comment = Printer Drivers                                                                                                                  
       create mask = 0664                                                                                                                         
       directory mask = 0775                                                                                                                      
       force group = @printadmin                                                                                                                  
       path = /var/lib/samba/drivers 
       write list = @printadmin root 


[Anonymous] 
       comment = Anonymous File Server Share 
       force user = nobody 
       guest ok = Yes 
       path = /srv/samba/anonymous 
       read only = No

9. Samba 구성이 OK인 경우 최근 변경 사항을 적용하려면 Samba 서비스를 다시 시작하세요.

systemctl restart smb

10. 마지막으로 익명 공유가 제대로 작동하는지 테스트하고 Windows 시스템에 로그인한 다음 Windows 탐색기를 열고 네트워크를 클릭한 다음 RHEL 호스트를 클릭하거나 서버 IP 주소를 사용하여 호스트에 액세스합니다(서버에서 ip add 명령을 실행하면 IP 주소를 보는 데 도움이 될 수 있습니다).

e.g. 2.168.43.198

11. 다음으로 Anonymous 디렉토리를 열고 여기에 파일을 추가하여 다른 사용자와 공유해 보세요.

RHEL 8에서 Samba4 보안 파일 공유 설정

12. 안전하게 공유된 디렉토리를 생성하려면 Samba 시스템 그룹을 생성해야 합니다. 보안 공유의 모든 사용자가 이 그룹에 추가됩니다. groupadd 명령을 사용하여 다음과 같이 그룹을 만들 수 있습니다.

groupadd smbgrp

그런 다음 usermod 명령을 사용하여 모든 사용자(예: tecmint)를 그룹에 추가하고 표시된 대로 각 사용자의 비밀번호를 설정합니다.

usermod tecmint -aG smbgrp
smbpasswd -a tecmint

13. 다음으로, 공유 파일을 안전하게 저장할 보안 디렉토리를 생성한 후 디렉토리에 적절한 권한을 설정하세요. 또한 디렉터리에 대한 SELinux 보안 컨텍스트를 다음과 같이 변경합니다.

mkdir -p /srv/samba/secure
chmod -R 0770 /srv/samba/secure
chown -R root:smbgrp /srv/samba/secure
chcon -t samba_share_t /srv/samba/secure

14. 다음으로 편집할 구성 파일을 엽니다.

vim /etc/samba/smb.conf

그리고 파일 끝에 다음 섹션을 추가합니다.

[Secure]
        comment = Secure File Server Share
        path =  /srv/samba/secure
        valid users = @smbgrp
        guest ok = no
        writable = yes
        browsable = yes

변경 사항을 저장하고 파일을 닫습니다.

15. 다음으로 testparm 명령을 실행하여 삼바 구성을 다시 확인합니다.

testparm

16. 변경 사항을 적용하려면 Samba 서비스를 다시 시작하세요.

systemctl restart smb.service
systemctl restart nmb.service

보안 Samba 파일 공유 테스트

17. 마지막으로 보안 공유가 제대로 작동하는지 테스트합니다. Windows 컴퓨터에서 Windows 탐색기를 열고 네트워크를 클릭한 다음 RHEL 호스트를 클릭하거나 다음을 사용하여 서버에 액세스해 보세요. 앞에서 설명한 대로 IP 주소입니다.

e.g. 2.168.43.198

RHEL 8 서버에 로그인하려면 사용자 이름과 비밀번호를 입력하라는 메시지가 표시됩니다.

18. 일단 로그인하면 모든 Samba 공유 디렉터리 목록이 표시됩니다. 이제 Secure 디렉터리에 파일을 추가하여 네트워크에서 허용된 다른 사용자와 일부 파일을 안전하게 공유할 수 있습니다.

그게 다야! 이 문서에서는 Windows 시스템과의 익명 및 보안 파일 공유를 위해 RHEL 8에서 Samba 4를 설치하고 구성하는 방법을 보여주었습니다. 이 가이드에 관한 질문이나 의견이 있으면 아래 피드백 양식을 사용하여 당사에 문의하십시오.