서버 설치 · 4 min read · Dec 06, 2025

우분투 16.04 LTS에서 Samba 서버 설치

이 가이드는 익명 및 보안 Samba 공유가 포함된 우분투 16.04 (Xenial Xerus)에서 Samba 서버의 설치 및 구성에 대해 설명합니다. Samba는 SMB/CIFS 클라이언트에 원활한 파일 및 인쇄 서비스를 제공하는 오픈 소스/무료 소프트웨어 제품군입니다. Samba는 다른 SMB/CIFS 구현과 달리 무료로 제공되며, Linux/Unix 서버와 Windows 기반 클라이언트 간의 상호 운용성을 허용합니다.

1 사전 참고

저는 Samba 서버를 설치할 새로 설치된 우분투 16.04 LTS 서버를 가지고 있습니다. Samba 클라이언트 시스템으로는 Samba 서버에 연결하여 설정을 확인할 Windows 데스크탑을 사용할 것입니다. Windows 데스크탑은 우분투 서버에 도달할 수 있도록 동일한 네트워크에 있어야 합니다. 제 우분투 서버의 호스트 이름은 server1.example.com이고 IP는 192.168.1.100입니다.

우분투 서버가 없다면, 이 튜토리얼을 따라 최소한의 서버 설정을 얻으세요.

참고: Windows 머신은 동일한 작업 그룹에 있어야 합니다. Windows 머신에서 다음 명령을 cmd 프롬프트에서 실행하여 값을 확인하세요:

net config workstation

출력은 다음과 같을 것입니다:

Windows 작업 그룹 이름 가져오기.

귀하의 Windows 머신은 우분투 서버와 동일한 워크스테이션 도메인에 있어야 합니다. 즉, 제 경우에는 WORKGROUP입니다.

Windows에서 호스트 이름으로 Windows 머신에 접근할 수 있도록 하려면 다음과 같이 진행하세요. 관리자 모드에서 Windows 터미널을 열고 (프로그램 메뉴에서 터미널 아이콘을 오른쪽 클릭하여 관리자 모드에 접근할 수 있습니다) 다음 명령을 실행하여 Windows 호스트 파일을 엽니다:

notepad C:\Windows\System32\drivers\etc\hosts

거기에서 다음 빨간 줄을 추가하고 파일을 저장합니다:

[...]  
192.168.1.100   server1.example.com     server1

다음 단계는 루트 사용자로 실행해야 합니다. 다음을 실행하세요:

sudo -s

Linux 서버의 셸에서 루트 사용자로 전환합니다.

2 익명 Samba 공유

Samba는 우분투 저장소에서 사용할 수 있습니다. 첫 번째 단계는 apt를 사용하여 Samba 서버와 그 종속성을 설치하는 것입니다.

apt-get install -y samba samba-common python-glade2 system-config-samba

Samba 버전 4.3.9-Ubuntu가 설치됩니다.

Samba를 구성하려면 /etc/samba/smb.conf 파일을 편집합니다. nano를 편집기로 사용하고 변경하기 전에 원본 파일의 백업을 만듭니다. 백업 파일 이름은 /etc/samba/smb.conf.bak입니다.

cp -pf /etc/samba/smb.conf /etc/samba/smb.conf.bak  
cat /dev/null > /etc/samba/smb.conf

nano로 Samba 구성 파일을 엽니다:

nano /etc/samba/smb.conf

다음 줄을 추가합니다.

[global]  
workgroup = WORKGROUP  
server string = Samba Server %v  
netbios name = ubuntu  
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  
force user = nobody

그런 다음 익명 공유를 위한 디렉토리를 생성합니다.

mkdir -p /samba/anonymous

올바른 권한을 설정합니다.

chmod -R 0775 /samba/anonymous  
chown -R nobody:nogroup /samba/anonymous

새 구성을 적용하기 위해 Samba를 재시작합니다.

service smbd restart  

이제 Windows에서 메뉴의 검색 필드에 “\server1”을 입력하거나 Windows 파일 탐색기의 네트워크 브라우저를 사용하여 공유에 연결할 수 있습니다.

Windows에서 Samba 익명 공유가 표시됩니다.

Drag&Drop으로 파일을 공유에 업로드하여 제대로 작동하는지 확인하세요.

익명 Samba 공유에 업로드가 성공했습니다.

서버에서 내용을 교차 확인할 수도 있습니다.

ls -la /samba/anonymous/
root@server1:/samba/anonymous# ls -la /samba/anonymous/  
total 16  
drwxrwxr-x 2 nobody nogroup 4096 Jun 1 18:46 .  
drwxr-xr-x 3 root root 4096 Jun 1 18:39 ..  
-rwxr--r-- 1 nobody nogroup 7405 Jun 1 18:42 test.odt  
root@server1:/samba/anonymous#

3 보안 Samba 서버

비밀번호로 보호된 공유를 위해, smbgrp 그룹과 Samba 서버에 접근할 사용자 till을 생성하겠습니다. 이 예제에서는 “howtoforge”를 비밀번호로 사용할 것이니, 서버에서 사용자 정의 및 안전한 비밀번호를 선택하세요.

addgroup smbgrp
useradd till -G smbgrp
smbpasswd -a till
root@server1:~# smbpasswd -a till  
New SMB password:<--howtoforge  
Retype new SMB password:<--howtoforge  
Added user till.  
root@server1:~#

이제 /samba 폴더에 “secured”라는 이름의 폴더를 만들고 다음과 같이 권한을 부여합니다.

mkdir -p /samba/secured  
cd /samba  
chmod -R 0770 secured  
chown root:smbgrp secured

Samba 구성 파일을 편집하고 파일 끝에 다음(빨간) 줄을 추가합니다:

nano /etc/samba/smb.conf

[...]  
[secured]  
path = /samba/secured  
valid users = @smbgrp  
guest ok = no  
writable = yes  
browsable = yes
service smbd restart  

설정을 교차 확인하려면 다음 명령을 실행하세요:

testparm  
root@server1:/samba# testparm  
Load smb config files from /etc/samba/smb.conf  
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)  
Processing section "[Anonymous]"  
Processing section "[secured]"  
Loaded services file OK.  
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions <-- Press Enter
# Global parameters  
[global]  
netbios name = UBUNTU  
server string = Samba Server %v  
security = USER  
map to guest = Bad User  
dns proxy = No  
idmap config * : backend = tdb
  
[Anonymous]  
path = /samba/anonymous  
force user = nobody  
read only = No  
guess ok = Yes
  
[secured]  
path = /samba/secured  
valid users = @smbgrp  
read only = No

Windows 머신에서 다시 “\server1“ 네트워크 장치를 열면 이제 사용자 이름과 비밀번호를 요청합니다. 위에서 생성한 사용자 세부 정보를 입력하세요. 제 경우, 값은 사용자 = till 및 비밀번호 = howtoforge입니다.

Samba 공유에 로그인.

두 개의 Samba 공유가 Windows 탐색기에 표시됩니다.

테스트 업로드가 성공했습니다.

우리는 우분투 서버에서 다음과 같이 파일을 확인할 수 있습니다:

ls -la /samba/secured/
root@server1:/samba# ls -la /samba/secured/  
total 16  
drwxrwx--- 2 root smbgrp 4096 Jun 1 19:25 .  
drwxr-xr-x 4 root root 4096 Jun 1 18:49 ..  
-rwxr--r-- 1 till till 7405 Jun 1 18:42 test.odt  
root@server1:/samba#

이제 우리는 우분투 16.04에서 익명 및 보안 공유가 성공적으로 구성된 Samba 서버를 가지고 있습니다 :)

4 이 튜토리얼의 가상 머신 이미지 다운로드

이 튜토리얼은 VMWare 및 Virtualbox와 호환되는 ovf/ova 형식의 즉시 사용 가능한 가상 머신 이미지로 제공됩니다. 가상 머신 이미지는 다음 로그인 세부 정보를 사용합니다:

SSH / 셸 로그인

사용자 이름: administrator
비밀번호: howtoforge

이 사용자는 sudo 권한이 있습니다.

VM의 IP는 192.168.1.100이며, /etc/network/interfaces 파일에서 변경할 수 있습니다. 가상 머신을 보호하기 위해 위의 모든 비밀번호를 변경하세요.

5 링크

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.