1. 程式人生 > >Samba服務端搭建與配置

Samba服務端搭建與配置

install mdb 管理 public 啟動 fin roo 掛載 mba

1.安裝:
yum -y install samba samba-client samba-common

2.啟動:
systemctl start nmb.service
nmdb:
這個daemon是用來管理工作組、NetBIOS(Network Basic Input/Output System) name等解析工作。
主要利用UDP協議開啟137、138端口來負責解析任務。
systemctl start smb.service
smdb:
這個daemon是用來管理samba主機分享的目錄、檔案和打印機等。
主要利用TCP協議來傳輸數據,開發139端口。

3.主要配置文件:
/etc/samba/smb.conf:samba主配置文件,包含global配置和共享資源配置。

[global]
  workgroup = MYGROUP
  server string = Samba Server Version %v
  log file = /var/log/samba/log.%m   ###samba log日誌
  max log size = 50
  security = user   ## 配置user層級
  passdb backend = tdbsam  ## 使用TDB數據庫格式
  load printers = no  ##打印服務
  printing = bsd
  printcap name = /dev/null
  disable spoolss = yes
============================ Share Definitions ==============================
##[homes]
     comment = Home Directories
     browseable = no
     writable = yes
     valid users = %S
     valid users = MYDOMAIN\%S

##[printers]
      comment = All Printers
       path = /var/spool/samba
       browseable = no
       guest ok = no
       writable = no
      printable = yes

[public]
        comment = 公共文件存放
        path = /data/smbshare/public
        #read list = xxx
        create mask = 777
        directory mask = 777
        public = yes
        writeable = yes

[rulefiles]
        comment = 公司制度文件
        browseable = yes  ##可被其他人瀏覽
        create mask = 777
        directory mask = 777
        path = /data/smbshare/rulefiles   ##共享的目錄,Samba服務器共享出來的路徑
        read list = aaa,bbb
        write list = aaa,bbb
        valid users = aaa,bbb

修改配置完 /etc/samba/smb.conf重新檢查一下語法:testparm

/etc/samba/lmhosts配置文件: 對應NetBIOS name的IP,lmhosts對應主機名是NetBIOS name。 類似/etc/hosts

4.創建共享目錄設置權限,創建samba賬號和密碼
建立系統賬號:

   mkdir -p /data/smbshare/public
   useradd -G users smb1
   useradd -G users smb2
   useradd -G users smb3
   echo 1234 | passwd --stdin smb1
   echo 1234 | passwd --stdin smb2
   echo 1234 | passwd --stdin smb3

samba使用 pdbedit命令將創建的系統賬號添加成Samba用戶。早期使用smbpasswd命令,後使用TDB數據庫,所以使用pdbedit命令管理samba用戶數據。
使系統賬號添加成Samba用戶:pdbedit -a -u smb1 pdbedit -a -u smb2 pdbedit -a -u smb3
列出當前Samba數據庫中賬號與UID等詳細信息:pdbedit -vL

bash /root/smbuser.sh 用戶名

#!/bin/bash
username=$1
passWD=`</dev/urandom tr -dc A-Za-z0-9 | head -c6`

useradd $username -s /sbin/nologin 1>/dev/null 2>&1
echo -e "$passWD\n$passWD" | smbpasswd -a $username -s
echo "用戶名:$username    密碼:$passWD"
echo "$username    $passWD" >> pass.file

5.Linux客戶端安裝:
yum -y install samba-client samba-common
掛載測試:
/usr/bin/mount -t cifs //192.168.2.200/smb1 /mnt -o username=smb1,password=4321
df -h

Samba服務端搭建與配置