Samba 설치 · 4 min read · Sep 13, 2025
OpenSuse 13.2에서 Samba 서버 설치
버전 1.0
저자: Srijan Kishore
Follow howtoforge on Twitter
이 가이드는 OpenSuse 13.2에서 익명 및 보안 Samba 서버를 구성하는 방법을 설명합니다. Samba는 SMB/CIFS 클라이언트에 원활한 파일 및 인쇄 서비스를 제공하는 오픈 소스/무료 소프트웨어 제품군입니다. Samba는 다른 SMB/CIFS 구현과 달리 무료로 제공되며, Linux/Unix 서버와 Windows 기반 클라이언트 간의 상호 운용성을 허용합니다.
1 사전 참고 사항
저는 Samba 서버를 설치할 OpenSuse 13.2 서버를 새로 설치했습니다. 물론 OpenSuse 13.2 서버에 도달할 수 있는 Windows 머신이 필요합니다. 제 OpenSuse 13.2 서버의 호스트 이름은 server1.example.com이고 IP는 192.168.0.100입니다.
튜토리얼의 처음 다섯 장에서 OpenSuse 13.2 서버를 설치할 수 있습니다.
참고:
- Windows 머신은 동일한 작업 그룹에 있어야 합니다. Windows 머신에서 cmd 프롬프트에서 다음 명령을 실행하여 값을 확인하십시오.
net config workstation
이렇게 표시됩니다.
Windows 머신은 OpenSuse 13.2 서버와 동일한 워크스테이션 도메인에 있어야 합니다. 즉,
WORKGROUP
제 경우입니다.
- Windows에서 Windows 머신에 도달할 수 있도록 하려면 다음과 같이 진행하십시오. 실행 터미널에서 서버 IP 주소의 항목을 추가합니다.
notepad C:\Windows\System32\drivers\etc\hosts
제 경우에는 이렇게 되어 있었고, 값을 저장하기만 하면 됩니다.
[...]
192.168.0.100 server1.example.com opensuse 2 익명 Samba 공유
먼저 익명 공유로 Samba를 설치하는 방법론을 설명하겠습니다. Samba를 설치하려면 다음을 실행하십시오.
zypper install samba samba-client
입력을 요청합니다.
server1:~ # zypper install samba samba-client
데이터 저장소 로딩 중…
설치된 패키지 읽는 중…
패키지 종속성 해결 중…
문제: patterns-openSUSE-minimal_base-conflicts-13.2-13.6.1.x86_64가 samba-client에 의해 제공되는 samba-client-4.1.6-3.18.1.x86_64와 충돌합니다.
해결책 1: 다음 작업이 수행됩니다:
설치하지 않음 samba-client-4.1.6-3.18.1.x86_64
설치하지 않음 samba-4.1.6-3.18.1.x86_64
해결책 2: patterns-openSUSE-minimal_base-conflicts-13.2-13.6.1.x86_64의 제거
위의 해결책 중에서 번호를 선택하거나 취소하십시오 [1/2/c] (c): <–2
종속성 해결 중…
패키지 종속성 해결 중…
다음 41개의 새 패키지가 설치될 예정입니다:
cifs-utils cups-libs libarchive13 libdcerpc0 libdcerpc-binding0 libfam0
libgensec0 libjbig2 libjpeg8 libldb1 libndr0 libndr-krb5pac0 libndr-nbt0
libndr-standard0 libnetapi0 libpdb0 libregistry0 libsamba-credentials0
libsamba-hostconfig0 libsamba-util0 libsamdb0 libsmbclient0 libsmbclient-raw0
libsmbconf0 libsmbldap0 libtalloc2 libtdb1 libtevent0 libtevent-util0
libtiff5 libwbclient0 perl-Crypt-SmbHash perl-Digest-MD4 perl-XML-LibXML
pytalloc samba samba-client samba-libs yast2-kerberos-client
yast2-samba-client yast2-samba-server
다음 패키지가 제거될 예정입니다:
patterns-openSUSE-minimal_base-conflicts
41개의 새 패키지를 설치하고 1개를 제거합니다.
전체 다운로드 크기: 11.1 MiB. 작업 후 추가 32.4 MiB가 사용됩니다.
계속하시겠습니까? [y/n/? 모든 옵션 표시] (y): <–y
Samba가 버전 4.1.6-3.18.1-3208-SUSE-oS13.2-x86_64로 설치됩니다.
이제 Samba를 구성하려면 /etc/samba/smb.cnf 파일을 편집합니다. 변경하기 전에 원본 파일의 백업을 /etc/samba/smb.cnf.bak로 만듭니다.
cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
cat /dev/null > /etc/samba/smb.conf
다음과 같이 항목을 추가하십시오.
vi /etc/samba/smb.cnf
[global]
workgroup = WORKGROUP
passdb backend = tdbsam
server string = Samba Server %v
netbios name = opensuse
security = user
map to guest = bad user
dns proxy = no
#============================ Share Definitions ==============================
[Anonymous]
path = /samba/anonymous
browsable =yes
writable = yes
guest ok = yes
read only = no mkdir -p /samba/anonymous
다음으로 부팅 시 서비스를 추가하고 서비스를 시작합니다.
systemctl start smb.service
systemctl start smb.service
참고: 방화벽을 넘어 서비스가 허용되도록 하려면 yast2에서 서비스를 추가해야 합니다.
yast2
Samba 클라이언트 및 Samba 서버에 대한 방화벽에서 서비스 오버라이드를 허용합니다.
이제 Windows에서 OpenSuse 13.2 공유에 다음과 같이 액세스할 수 있습니다.
Windows 머신에서 폴더를 탐색하고 텍스트 파일을 생성해 보십시오. 그러나 권한 거부 오류가 발생합니다.
공유 폴더의 권한을 확인하십시오.
ls -l /samba/
server1:~ # ls -l /samba/
total 0
drwxr-xr-x 1 root root 0 Nov 11 09:41 anonymous
server1:~ #
익명 사용자에게 권한을 부여하려면 다음과 같이 권한을 설정하십시오.
cd /samba
chmod -R 0777 anonymous/
ls -l
server1:/samba # ls -l
total 0
drwxrwxrwx 1 root root 0 Nov 11 09:41 anonymous
server1:/samba #
이제 익명 사용자가 폴더 내용을 탐색하고 생성할 수 있습니다.
서버에서 내용을 교차 확인할 수 있습니다.
ls -l anonymous/
server1:/samba # ls -l anonymous/
total 0
-rwxr–r– 1 nobody nobody 0 Nov 21 14:10 anonymous_test.txt
server1:/samba #
3. 보안 Samba 서버
이를 위해 smbgrp 그룹과 srijan 사용자를 생성하여 적절한 인증으로 Samba 서버에 액세스합니다.
groupadd smbgrp
useradd srijan -G smbgrp
smbpasswd -a srijan
server1:~ # smbpasswd -a srijan
새 SMB 비밀번호:
새 SMB 비밀번호를 다시 입력하십시오:
사용자 srijan이 추가되었습니다.
server1:~ #
server1:/samba # smbpasswd -a srijan
새 SMB 비밀번호: <–srijanpasswd
새 SMB 비밀번호를 다시 입력하십시오: <–srijanpasswd
사용자 srijan이 추가되었습니다.
server1:/samba #
이제 /samba 폴더에 secured라는 폴더를 생성하고 다음과 같이 권한을 부여합니다.
mkdir -p /samba/secured
cd /samba
chmod -R 0770 secured/
다시 구성 파일을 다음과 같이 편집합니다.
vi /etc/samba/smb.conf
[...]
[secured]
path = /samba/secured
valid users = @smbgrp
guest ok = no
writable = yes
browsable = yes systemctl restart smb.service
설정을 교차 확인하려면 다음과 같이 확인하십시오.
testparm
server1:~ # testparm
/etc/samba/smb.conf에서 smb 구성 파일 로드
rlimit_max: 최소 Windows 제한(16384)으로 rlimit_max(1024) 증가
“[Anonymous]” 섹션 처리 중
“[secured]” 섹션 처리 중
서비스 파일이 정상적으로 로드되었습니다.
서버 역할: ROLE_STANDALONE
서비스 정의 덤프를 보려면 Enter를 누르십시오.
[global]
netbios name = OPENSUSE
server string = Samba Server %v
map to guest = Bad User
dns proxy = No
idmap config * : backend = tdb
[Anonymous]
path = /samba/anonymous
read only = No
guest ok = Yes
[secured]
path = /samba/secured
valid users = @smbgrp
read only = No
server1:~ #
이제 Windows 머신에서 적절한 자격 증명으로 폴더를 확인하십시오.
다시 한 번 사용자가 srijan에게 쓰기 권한을 부여하는 문제에 직면하게 됩니다.
cd /samba
chown -R srijan:smbgrp secured/
이제 Samba 사용자
srijan
해당 폴더에 쓰기 권한이 있습니다. 축하합니다. OpenSuse 13.2에서 Samba 서버를 설정했습니다.
우리는 Ubuntu 서버에서 파일을 확인할 수 있습니다.
ls -l /samba/secured/
server1:~ # ls -l /samba/secured/
total 0
-rwxr–r– 1 srijan users 0 Nov 21 14:16 secured_test.txt
server1:~ #
축하합니다. OpenSuse 13.2에서 성공적으로 구성된 Samba 서버가 있습니다 :)
4 링크
- Samba : http://www.samba.org/samba/
- OpenSuse: http://www.opensuse.org/en/
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.