Linux 的SMB服務,講SMB很多人都是頭冒星星、問號滿天飛,其實說穿了就是在 Windows 常見的網路芳鄰,用 Linux 的 Samba,可做出很多意想不到的SMB服務功能外,另有權限控管,大幅提高企業網路服務安全等級;
先檢查 samba 套件
rpm -qa samba samba-common samba-client
其中 samba 及 samba-common 是 Server端的套件;
另外 samba-client 及 samba-common 是 Client端的套件;
因為最後做測試時,利用本機來測所以連client端套件就一併安裝檢查;
service smb start 啟用samba服務;
chkconfig smb on 開機啟用samba;
samba的設定檔可以全數集中在 /etc/samba/smb.conf 統一管理;
vi /etc/samba/smb.conf
在 [global] 中,顧名思義是全域性共同設定都在這一段底下;
workgroup:這部份是網路芳鄰中看到的芳鄰群組名稱;
netbios name:主機的 NetBIOS 名稱(注意不能和芳鄰中的其它主機有相同命名);
server string:samba主機的簡易說明;
使用者登入層級設定
security = user 用來限制使用者的權限;
建議設 passdb backend = smbpasswd
security = share 不用驗証,不需要密碼即可分享;
通常會配合[分享名稱]中參數 public = yes
[分享名稱],這名稱即是在windows的芳鄰看到的分享目錄。
comment = test share 目錄的說明;
path = /test 指的是linux系統內分享的絕對路徑;
public = no 這裡是要不要讓所有的人使用;
printable = no 能不能使用印表機;
browseable = yes 能不能由芳鄰看到分享的外稱;
valid users = ned maggie 可以進入分享目錄的使用者;
writeable = no 進入分享目錄的使用者能不能有寫入權限;
write list = ned 分享目錄使用者中可以有寫入的使用者;
Samba server架好後帳號預設值是空的;
而使用 samba 有個先決條件就是要先有 local user再建 smbuser;
建 smbuser 帳號的命令如下:
smbpasswd -a ned
會出現輸入 password 的畫面;這裡用123
cat /etc/samba/smbpasswd
檢查看看有沒有成功建好 smbuser,如果沒有就不會有東西;
預設上除了使用者帳號 ned(smbuser)外,其餘為亂碼;
全都準備好了之後可以利用 testparm 測試 smb.conf 有沒有設定上的問題,沒有的話就重啟smb的服務;
利用 client端的工具來測試 samba server;
smbclient -L //localhost 檢查本機的芳鄰分享
smbclient //localhost/分享名稱 -U ned 123
測試直接用帳號登入是否可以成功(可以選直接帶密碼或不帶)
通常建議將分享的目錄權限改為1777;
Linux機器要掛載服務時範例如下:
mount -t cifs //192.168.1.2/分享名稱 /smbdata -o user=ned, password=123
這樣就可以直接掛載了,最後還可以指定 uid=500, file_mode=644(指定權限)
而fstab表中掛載時,檔案格式記得為 cifs ;
//192.168.1.2/分享名稱 /smbdata cifs username=ned, password=123 0 0
0 回應:
張貼留言