ตัวอย่างการคอนฟิก Samba ใ้ห้เป็น Domain Controller สำหรับ Small Workgroups บน ubuntu 5.10

เขียนเมื่อ 11/02/2006
ที่มา : http://www.howtoforge.com/samba_setup_ubuntu_5.10_p4

ติดตั้งและคอนฟิก Samba Server

  1. ติดตั้ง Samba ด้วยคำสั่ง apt-get install ดังนี้
    apt-get install samba samba-common samba-doc libcupsys2-gnutls10 libkrb53 winbind smbclient

  2. แก้ไขไฟล์ /etc/samba/smb.conf ให้เป็นดังนี้



    หมายเหตุ : ค่า "netbios name" ในไฟล์ smb.conf ต้องเหมือนกับ hostname ของ Server

    workgroup = MYWORKGROUP  ให้ระบุ Windows domain ที่ใช้ใน Windows workstation

    logon drive = H:  เป็น drive letter ภายใต้การแช์ร์ของ SAMBA ซึ่งจะปรากฎใน Windows Explorer

    With logon script = scripts/logon.bat    คุณสามารถระบุ Windows batch script ที่จะถูก execute ทันทีเมื่อ Windows workstation ทำการ login ถ้าไม่มี script ก็สามารถใช้ comment บรรทัดนี้ได้

  3. ทำการสร้างไดเร็คทอรี่สำหรับ domain logon และ profile ดังนี้

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


  4. ทำการ restart samba ด้วยคำสั่ง

    /etc/init.d/samba restart

  5. ทำการแก้ไขไฟล์ /etc/nsswitch.conf โดยเปลี่ยนบรรทัด :

    hosts: files dns

    ไปเป็น :

    hosts: files wins dns

  6. ทำการเพิ่ม computers ใน workgroup ของคุณทั้งหมดเข้าไปในไฟล์ /etc/hosts ของ server เช่น

    192.168.0.100 server1
    192.168.0.110 workstation1
    192.168.0.111 workstation2
    192.168.0.112 workstation3
    192.168.0.113 workstation4


  7. เพิ่ม root user เข้าไปยัง SAMBA password database โดย root user (alias: Administrator) นี้จะเป็น domain administrator ของเรา ซึ่ง account นี้มีความจำเป็นสำหรับการเพิ่ม computers ใหม่เข้าไปยัง SAMBA domain

    smbpasswd -a root

    สร้างไฟล์ /etc/samba/smbusers และเพิ่มข้อความหนึ่งบรรทัดเข้าไปในไฟล์ด้วยการ execute คำสั่ง :

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

  8. ทดสอบการ setup ที่ผ่านมาว่าถูกต้องหรือไม่้ด้วยคำสั่ง :

    smbclient -L localhost -U%


    ซึ่งผลที่ได้ควรจะเป็นในแนวต่อไปนี้ :

  9. ทำการเซ็ตอัพ default domain groups สำหรับ Windows ด้วยคำสั่งต่อไปนี้ :

    net groupmap modify ntgroup="Domain Admins" unixgroup=root
    net groupmap modify ntgroup="Domain Users" unixgroup=users
    net groupmap modify ntgroup="Domain Guests" unixgroup=nogroup



    เพิ่ม Users เข้ากับ SAMBA Domain ของเรา

  10. ทำการเพิ่ม user เข้าไปยัง SAMBA domain ของเรา ซึ่งหมายถึง user ที่ต้องการจะเชื่อมต่อเข้ากับกับ SAMBA domain server เช่นถ้า user ชื่อ tom ก็สามารถเพิ่มโดยใช้คำสั่งดังนี้

    1. เพิ่ม linux user ของ tom :

      useradd tom -m -G users

    2. เพิ่ม linux server ของ tom เ้ข้ากับ SAMBA password database :

      smbpasswd -a tom

    เพิ่มการ share

  11. ทำการเิ่พิ่มพื้นที่ของการ share ซึ่งในที่นี้เราจะสร้างพื้นที่ที่จะ share ให้กับ user ทุกคน โดยใช้คำสั่งดังนี้ :

    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 = All Users
        path = /home/shares/allusers
        valid users = @users
        force group = users
        create mask = 0660
        directory mask = 0771
        writable = yes


  12. และถ้าไม่้ต้องการติดตั้งโปรแกรมในส่วนของ print server ก็ให้ทำการ restart samba ดังนี้ :

    /etc/init.d/samba restart


    จากนั้นก็ให้ทดลองใช้งานดู


    ติดตั้ง CUPS

  13. ถ้าต้องการให้ SAMBA Server ของคุณเป็น Print Server ด้วย ก็จะต้องมีการติดตั้งและคอนฟิก CUPS
    1. ติดตั้งโปรแกรมโดยใช้คำสั่งหนึ่งบรรทัดยาว ๆ ดังนี้ :

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

      ในกรณีที่ติดตั้งไม่ได้ก็อาจจะแก้ได้ด้วยการใช้คำสั่ง :

      apt-get update

    2. เพื่อให้สามารถ Access ผ่าน Web Interface จากเครื่องที่เป็น Workstation ได้  ก็ให้ทำการเปลี่ยนแปลงให้ CUPS มีการเฝ้าคอย (listen) ที่ IP ของ Server ด้วยการแก้ไขส่วนของ Network Options ของไฟล์ /etc/cups/cupsd.conf  ดังนี้ :

      Listen 127.0.0.1:631
      Listen 192.168.0.100:631


    3. ให้เซ็ต AuthGroupName เ็ป็น shadow ในส่วนของ Security Options ดังนี้ :

      AuthGroupName shadow

    4. เพื่ออนุญาตให้ access ได้เฉพาะจาก my admin workstation (IP : 192.168.0.70) ให้เพิ่ม Allow From 192.168.0.70 ใน security options และเซ็ต AuthClass เป็น Group ดังนี้ :



    5. เพิ่ม cups users เข้าไปยังกลุ่ม shadow ดังนี้ :

      adduser cupsys shadow

    6. ทำการ restart cupsys ดังนี้ :

      /etc/init.d/cupsys restart

    7. ตอนนี้ cups webinterface สามารถจะ access ได้แล้วผ่าน browser โดยใ้ช้ยูสเซอร์ root และรหัสผ่านของ root ด้วยการเรียก :

      http://192.168.0.100:631/

      หมายเหตุ :  ถ้าเครื่องพิมพ์ของคุณไม่มี Printer Driver ที่สามารถใช้งานได้  และคุณต้องการที่จะใช้เครื่องพิมพ์นี้เฉพาะจาก windows workstations ของคุณผ่าน SAMBA คุณสามารถใช้ printer manufacturer RAW  และติดตั้ง printer driver ที่ถูกต้องบน Windows workstation ของคุณ