Fedora Samba MySQL 檔案伺服器

結合MySQL 打造Samba認證檔案伺服器

2012-07-11
在網路中存取資料最常用到的,就是透過Samba伺服器來存取異質網路間的檔案文件,但如何管理眾多使用者所擁有的帳號及密碼一直是個頭痛的難題。其實只要善用MySQL資料庫,就可以減輕Samba帳號密碼管理上的負擔了。
相信很多企業都有資料儲存的需求,並且利用所謂的檔案伺服器(NAS)來儲存這些資料。而此類產品最重要的一個要求即為權限控管,具有相關權限的人員,方可存取符合權限的相關資料。

在開源碼社群中,最富盛名的檔案伺服器軟體即為Samba,可用來建置檔案伺服器,提供相關資料的存放及管控以建立資料中心。

Samba軟體對於帳號權限控管也提供了相當豐富的控管方式,除了利用本機的帳號控管方式或提供遠端認證(如LDAP)的控管方式外,利用系統上的PAM機制與外掛模組的結合,也可以讓Samba透過MySQL資料庫來提供權限控管,讓使用者能更便利地管理Samba的帳號。

在本文當中,筆者除了介紹Samba的基本認證方式之外,也將為讀者介紹pam_mysql與Samba的結合應用,實作出一個可利用MySQL資料庫管理帳號的Samba伺服器。

本解決方案所需的套件如下表所示:


安裝及設定Samba

長久以來,如何讓不同作業系統能夠分享彼此資源的問題,一直深深地困擾著使用者,基於解決此類困擾,有開發者利用解析微軟作業系統的通訊協定,利用逆向工程的方式開發出Server Message Block(SMB)檔案系統,提供給兩種不同作業系統以作為檔案資料交換之用(讀者可以簡單想成是「網路芳鄰」功能,只不過是不同作業系統的檔案共享)。

第一版的Samba伺服器在1992年推出,至此Samba即成為微軟視窗系統與Linux系統溝通的代名詞。Samba伺服器是一種自由軟體,架構在NetBIOS(Network Basic Input/Output System)的基礎上,主要用來與微軟Windows系統的SMB/CIFS(Server Message Block/Common Internet File System)網路協定做連結。


當然,Samba強大的功能遠不僅於此,在目前的版本(最新穩定的版本為V3)中,Samba除了可與微軟作業系統分享資料夾及印表機相關資源外,還可以整合進微軟伺服器作業系統的網域、扮演網域控制站(Domain Controller)以及加入Active Directory成員等相關功能。

安裝Samba

本文將僅探討Samba伺服器的權限驗證功能,其餘的功能就請讀者自行研究。

接著就來安裝Samba伺服器。執行指令「yum install samba*」即可成功安裝好Samba軟體,表1簡單說明了Samba相關的重要執行檔。

表1 Samba重要的執行檔


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!