서버 설정 · 4 min read · Dec 11, 2025

SAMBA (도메인 컨트롤러) 서버를 위한 소규모 작업 그룹과 Ubuntu 7.10 - 페이지 2

SAMBA 서버

apt-get install libcupsys2 samba samba-common samba-doc smbclient winbind cupsys-common

/etc/samba/smb.conf 파일을 다음과 같이 편집합니다:

vi /etc/samba/smb.conf
[global]
   workgroup = MYWORKGROUP
   netbios name = SERVER1
   server string = %h 서버 (Samba, Ubuntu)

   passdb backend = tdbsam
   security = user
   username map = /etc/samba/smbusers
   name resolve order = wins bcast hosts
   domain logons = yes
   preferred master = yes
   wins support = yes

   # 인쇄를 위한 CUPS 설정
   load printers = yes
   printcap name = CUPS
   printing = CUPS

   # 기본 로그온
   logon drive = H:
   logon script = scripts/logon.bat
   logon path = \\server1\profile\%U

   # 사용자 추가 스크립트
   # add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u
   add user script = /usr/sbin/useradd -m '%u' -g users -G users
   delete user script = /usr/sbin/userdel -r %u
   add group script = /usr/sbin/groupadd %g
   delete group script = /usr/sbin/groupdel %g
   add user to group script = /usr/sbin/usernod -G %g %u
   add machine script = /usr/sbin/useradd -s /bin/false/ -d /var/lib/nobody %u
   idmap uid = 15000-20000
   idmap gid = 15000-20000
   template shell = /bin/bash

   # smb 비밀번호를 리눅스 비밀번호와 동기화
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* .
   passwd chat debug = yes
   unix password sync = yes

   # 로그 레벨 설정
   log level = 3

[public]
   browseable = yes
   public = yes


[homes]
   comment = 홈
   valid users = %S
   read only = no
   browsable = no


[printers]
   comment = 모든 프린터
   path = /var/spool/samba
   printable = yes
   public = no
   writable = no
   create mode = 0700

[print$]
   comment = 프린터 드라이버
   path = /var/lib/samba/printers
   browseable = yes
   read only = yes
   guest ok = no
   write list = root, @smbadmin


[netlogon]
   comment = 네트워크 로그온 서비스
   path = /home/samba/netlogon
   admin users = Administrator
   valid users = %U
   read only = no
   guest ok = yes
   writable = no
   share modes = no


[profile]
   comment = 사용자 프로필
   path = /home/samba/profiles
   valid users = %U
   create mode = 0600
   directory mode = 0700
   writable = yes
   browsable = no
   guest ok = no

      

도메인 로그온 및 프로필을 위한 디렉토리를 생성합니다:

mkdir /home/samba  
mkdir /home/samba/netlogon  
mkdir /home/samba/profiles   
chmod 777 /var/spool/samba/   
chown -R root:users /home/samba/  
chmod -R 771 /home/samba/

이제 Samba를 재시작합니다:

/etc/init.d/samba restart

/etc/nsswitch.conf 파일을 편집합니다. 다음 줄을 변경합니다:

vi /etc/nsswitch.conf
hosts: files dns

다음과 같이:

hosts: files wins dns

서버의 /etc/hosts 파일에 작업 그룹의 모든 컴퓨터를 추가합니다.

vi /etc/hosts
192.168.0.100 server1 server1.example.com
192.168.0.110 workstation1
192.168.0.111 workstation2
192.168.0.112 workstation3
192.168.0.113 workstation4

루트 사용자를 SAMBA 비밀번호 데이터베이스에 추가합니다. 루트 사용자(별칭: Administrator)는 우리의 도메인 관리자입니다. 이 계정은 새로운 컴퓨터를 SAMBA 도메인에 추가하는 데 필요합니다.

smbpasswd -a root

/etc/samba/smbusers 파일을 생성하고 다음 줄을 추가합니다:

echo "root = Administrator" > /etc/samba/smbusers

이렇게 하면 일반 Windows 사용자 이름 “Administrator”를 리눅스 루트 사용자의 별칭으로 사용할 수 있습니다.

이제 설정이 올바른지 테스트하겠습니다:

smbclient -L localhost -U%

출력은 다음과 유사해야 합니다:

Domain=[MYWORKGROUP] OS=[Unix] Server=[Samba 3.0.26a]  
        Sharename       Type      Comment  
        ---------       ----      -------  
        IPC$            IPC       IPC 서비스 (samba 서버 (Samba, Ubuntu))  
        netlogon        Disk      네트워크 로그온 서비스  
        print$          Disk      프린터 드라이버  
Domain=[MYWORKGROUP] OS=[Unix] Server=[Samba 3.0.26a]  
        Server               Comment  
        ---------            -------  
        SERVER1              samba 서버 (Samba, Ubuntu)  
        Workgroup            Master  
        ---------            -------  
        MYWORKGROUP          SERVER1  
        WORKGROUP            FILESERVER

Windows의 기본 도메인 그룹을 설정합니다:

net groupmap add ntgroup="Domain Admins" unixgroup="root" type=domain -U root  
net groupmap add ntgroup="Domain Users" unixgroup="users" type=domain -U root  
net groupmap add ntgroup="Domain Guests" unixgroup="nogroup" type=domain -U root

SAMBA 도메인에 사용자 추가하기

이제 사용자 “tom”을 SAMBA 도메인에 추가하겠습니다. 이 SAMBA 도메인 서버에 연결하려는 각 사용자 계정에 대해 이와 같이 사용자를 추가해야 합니다.

사용자 “tom”을 비밀번호 “secret”으로 SAMBA 및 리눅스 사용자 데이터베이스에 추가합니다:

net rpc user add tom -U root  
net rpc user password tom "secret" -U root  
smbpasswd -e tom

공유 추가하기

이제 모든 사용자가 접근할 수 있는 공유를 추가하겠습니다:

mkdir -p /home/shares/allusers  
chown -R root:users /home/shares/allusers/  
chmod -R ug+rwx,o+rx-w /home/shares/allusers/

/etc/samba/smb.conf 파일의 끝에 다음 줄을 추가합니다:

[allusers]
  comment = 모든 사용자
  path = /home/shares/allusers
  valid users = @users
  force group = users 
  create mask = 0660
  directory mask = 0771
  writable = yes

이제 Samba를 재시작합니다:

/etc/init.d/samba restart

CUPS 설치하기

apt-get install cupsys cupsys-client cupsys-driver-gimpprint defoma fontconfig foomatic-db foomatic-filters libcupsimage2 libexpat1 libfontconfig1 libfreetype6 libjpeg62 libpaper1 libpng12-0 libslp1 libtiff4 patch perl perl-modules ttf-bitstream-vera ucf

내 워크스테이션(IP 192.168.0.70)에서 웹 인터페이스에 접근하기 위해 CUPS를 서버 IP에서 수신하도록 구성하고 IP 192.168.0.70에서 접근을 허용합니다. 이 IP는 네트워크 구성에 맞게 변경해야 합니다.

vi /etc/cups/cupsd.conf

다음 줄을 변경합니다:

Listen localhost:631

다음과 같이:

Listen 192.168.0.70:631

그리고:

# 관리 페이지에 대한 접근 제한...  
  
Order allow,deny  
Allow localhost   

다음과 같이:

# 관리 페이지에 대한 접근 제한...  
  
Order allow,deny  
Allow 192.168.0.70  

그리고 CUPS 데몬을 재시작합니다:

/etc/init.d/cupsys restart

이제 CUPS 웹 인터페이스에 내 워크스테이션의 모든 웹 브라우저에서 접근할 수 있습니다:

http://192.168.0.100:631/

이제 사용자 이름 root와 내 루트 비밀번호로 CUPS 인터페이스에 로그인할 수 있습니다.

참고: 프린터에 사용할 수 있는 리눅스 드라이버가 없고 이 프린터를 SAMBA를 통해 Windows 워크스테이션에서만 사용하려는 경우, 프린터 제조사 “RAW”를 사용하고 Windows 워크스테이션에 올바른 드라이버를 설치할 수 있습니다.

CUPS에서 새 프린터를 생성한 경우, 다음 명령으로 Samba에 추가해야 합니다:

cupsaddsmb -a

이 방법은 모든 HowtoForge 구독자를 위한 VMware 가상 머신 이미지로도 제공됩니다.

링크

모든 상표는 해당 소유자의 소유입니다.

Share: X/Twitter LinkedIn

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

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