協議
smb(server message block)
基於tcp/ip協議
澳大利亞人開發
功能檔案 印表機
客戶win9x winnt linux unix dos
/usr/sbin/smbd
處理來自使用者的連線;檔案、許可權、使用者名稱的管理
/usr/sbin/nmbd
幫助快速定位伺服器,主要是主機名的定位
/usr/sbin/swat
samba的web維護工具,可以通過web來維護samba
/etc/rc.d/init.d/smb
啟動或停止samba服務的指令碼程式
/etc/smb.conf
samba的主要配置檔案
/etc/smbusers
samba客戶的使用者名稱到linux使用者名稱的對映檔案
/usr/bin/smbstatus
報告當前samba的連線狀態
/usr/bin/mksmbpasswd.sh
從/etc/passwd檔案形成smbpasswd檔案的程式
/usr/bin/smbadduser
增加新的samba使用者的程式
/usr/bin/smbclient
訪問smb伺服器資源的客戶程式
smbclient //eloo-server1/share
smbclient //eloo-server1/share -i 192.168.0.22
smbclient -m eloo-server1
smbclient -l
smbmount //smbserver/service /mnt/smb
/usr/bin/smbpasswd
改變乙個使用者的smb加密口令
/usr/bin/testparm
檢查smb.conf配置檔案語法是否正確的程式
smb.conf是由段組成,每個段中又包含引數,引數的賦值方法
引數=引數值
; #開頭的都是注釋行
巨集:log file=/var/log/samba/log.%m
[global]
workgroup=eloo.com 指該伺服器所在的工作組
server string= samba server 描述資訊
log file=/var/log/samba/log.%m 指定日誌檔案的存放地點 m代表客戶機的netbios名
security = user 指定samba操作的安全方式
[homes]
comment = home directories 注釋資訊
browseable = yes 共享名稱可以出現
writeable = yes 共享目錄可以讓客戶寫
create mode=0755 按照unix檔案的屬性來建立檔案
[printers]
path = /var/spool/samba 設定乙個可以寫的目錄,作緩衝池
guest ok = yes 允許任何人訪問
printable = yes 可以列印
global中常用的引數
security 確定對客戶使用者名稱/口令的驗證方式
-user 進行訪問之前要輸入有效的使用者名稱及口令
-share 不需要有效的使用者名稱及口令即可訪問
-server 本質與'user'模式一樣,但由其它samba伺服器來驗證
-domain 指定該samba伺服器是乙個域控制器
encrypt passwords = yes/no
是否使用win系統下的加密口令,如果選yes的話,就接收傳過來的加密的口令,
如果選no的話,就要接收未加密的口令,但現在的win系統一般都加密,所以要修改登錄檔,
使之不加密
regedit
/hkey_local_machine/system/currentcontrolset/services/vxd/vnetsup
編輯-=-新建==dword值
重新命名"新值#1"為"enableplaintextpassword"
賦值該新鍵值為1
smb passwd file =/etc/smbpasswd
設定samba伺服器的使用者密碼存放地
username map
把samba客戶的使用者名稱對映為linux使用者名稱的檔案
ex:root = admin administrator
host allow = 192.68.0. except 192.68.0.11
允許192.68.0這個子網段內除192.68.0.11這台機器外的的所有機器訪問
log file =/var/log/samba/log.%m
如果host1,host2這兩台機器訪問過伺服器,就會在/var/log/samba/目錄下生成log.host1,log.host2這兩個日誌檔案
smb.conf的其它引數說明
path 共享目錄的路徑(一定要存在)
browseable 共享段是否在控制列表中列出
exec 或 proexec 在建立連線之前有smb伺服器選執行的命令
root preexec 只有root才能執行的命令,常用於掛接檔案系統
ex:[cdrom]
comment = cdrom
path = /mnt/cdrom
read only = yes
root preexec = mount /mnt/cdrom
root postexec = umount /mnt/cdrom
public 是否公開,如果設定為yes的話,訪問此共享目錄不需要口令
create mode = 0755 建立檔案後檔案的許可權位
read only 如果設定為yes ,則不允許使用者在此目錄中進行寫檔案操作
實 驗一:把自己本機設定為一台samba伺服器,使/home/user/test目錄共享,使用另外一台windows機器來測試是否能找到此機器並能訪 問共享目錄(注意:此實驗中samba的安全級別設定為share級,即所有人都可以訪問 security = share)
實驗二:內容同上,但要把伺服器的安全級別設定為user級別,即security=user,然後再測試。
share級別
vi /etc/smb.conf
[global]段中
改security = share
後,加乙個共享段
[share]
path=/home/user/share
public=yes
browseable=yes
netconf 設定主機名
hostname 設定主機名
重啟即可
實驗內容:設定/home/user/share目錄共享,使win9x客戶端訪問
user級別(vi /etc/smb.conf)
[global]段中
改security=user
取消 encrypt passwords = yes
smb passwd file = /etc/smbpasswd
的注釋cat /etc/passwd|mksmbpasswd.sh >/etc/smbpasswd
使系統帳號匯入至samba帳號庫中
smbpasswd
為乙個samba帳號設定密碼
重啟服務
實驗內容:設定win98客戶端通過正常的使用者名稱和口令可以訪問自己的主目錄
Samba伺服器配置
ubntu 16.04 sudo apt get install samba 啟動命令 sudo etc init.d samba start 關閉命令 sudo etc init.d samba stop 重新命令 sudo etc init.d samba restart 配置檔案 etc sa...
samba伺服器配置
在配置samba伺服器時,如果採用預設配置是不需要使用者名稱密碼即可登入的,這使得在win10中無法連線 win10的安全策略禁止匿名連線 因此需要新增samba使用者。步驟如下 root ubuntu groupadd linuxsir g 6000 root ubuntu useradd lin...
samba伺服器配置
以下使用的linux版本為 redhat enterprise linux 7.0 x86 64,檢視系統中是否安裝有samba服務相關的軟體包 rpm qa grep samba 沒有安裝samba相關的軟體包,則使用yum進行包的安裝,當然也可以使用rpm的方式單個進行安裝。yum instal...