為什么一個用了30多年的技術(shù)還優(yōu)雅的活著
看到標(biāo)題很多人肯定要說什么技術(shù)能活這么久,在當(dāng)今高速發(fā)展的社會,什么技術(shù)活了30多年還不被淘汰,那就是NIS.
NIS
很多做linux運維的對NIS這個技術(shù)并不感覺陌生,但你們知道嗎?雖然它今年已經(jīng)32歲了,可依舊存在在于全球網(wǎng)絡(luò)中。 NIS(network informition service),翻譯一下叫網(wǎng)絡(luò)信息服務(wù),也很多人也對它很陌生,所以介紹它之前從需要聊聊。 從需要談起 賬戶管理、身份驗證這種需要說起,這種需要的產(chǎn)生并不需要過多的解釋;小企業(yè)無所謂權(quán)限、安全管理,因為人少好控,一般并不需要這種賬號管理的架構(gòu);但企業(yè)如果有上百位以上員工時,賬號安全、權(quán)限等等需要就會顯得很杰出,這時需要一種技術(shù)或一種工具去管理驗證賬戶,根據(jù)你不一樣的系統(tǒng)環(huán)境,NIS或AD活動目錄管理工具就應(yīng)運而生。 我們都知道,windows都用active directory,又叫活動目錄,它以域的方式管理企業(yè)內(nèi)部網(wǎng)絡(luò)登陸,負責(zé)架構(gòu)中大型網(wǎng)絡(luò)環(huán)境的集中式目錄管理服務(wù),一般大中型企業(yè)內(nèi)部都會部署此環(huán)境;做為新員工,你第一天入職必須要記住的就是你的域賬號和域密碼。因為大部分公司用戶的都是windows環(huán)境,所以活動目錄在用戶管理領(lǐng)域廣為認知。 NIS,不熟? NIS這門技術(shù),很多人卻不知道,原因無它,因為它主要用于管理linux客戶端的用戶,這種使用環(huán)境比較少,所以使用環(huán)境并不多; 對于那些不熟悉NIS的人,我來做一點點介紹。 20世紀70年代,當(dāng)時計算機昂貴,網(wǎng)絡(luò)由少量節(jié)點組成時,管理網(wǎng)絡(luò)信息是可管理的,不需要集中式系統(tǒng)。隨著計算機變得越來越便宜,網(wǎng)絡(luò)越來越大,在單個系統(tǒng)上維護單獨的網(wǎng)絡(luò)配置副本變得越來越困難。NIS
NIS歷史 NIS由Sun(如今的sun已被oracle收購了)于1985年開發(fā),它比windows的AD要早很多年,對于windows AD來講,NIS已經(jīng)是大叔級的了,而Win AD不過是個17歲的小姑娘,在賬號管理的領(lǐng)域NIS已相當(dāng)成熟。 淺談NIS技術(shù)原理 NIS本來是用來輔助Unix網(wǎng)絡(luò)系統(tǒng)的中央身份驗證和授權(quán)機制。當(dāng)然它還可以處理其他任務(wù),例如集中管理網(wǎng)絡(luò)共享文件、主機名和其他網(wǎng)絡(luò)配置數(shù)據(jù)。基本上,任何可以被壓縮成文本文件的內(nèi)容都可以通過NIS共享,比如賬號、密碼、文件系統(tǒng)都可以用NIS來管理。--這是摘錄,簡單說就是nis架構(gòu)的環(huán)境下,同一個nis域賬號可以登錄不一樣的linux客戶端。環(huán)境相似下面 NIS 提供的 /etc/passwd,/etc/group 以及 /etc/hosts 等 ASCII 格式檔案的信息, NIS Server 會將前述幾個ASCII 檔案內(nèi)容復(fù)制成為 DBM 數(shù)據(jù)庫格式的檔案,當(dāng)用戶由個人計算機聯(lián)機到 NISClient主機嘗試登入時, NIS Client 將會到 NIS Server 去查該用戶的賬號與密碼,以做為用戶登入驗證的依據(jù)。config
為什么都說NIS不安全? 說它不安全性,舉個例子,一般情況下你在NIS服務(wù)器上看賬號信息是如下的,存在/etc/passwd & /etc/shadowpasswd
這意味著當(dāng)有人通過NIS賬號登錄到Unix系統(tǒng)時,會根據(jù)passwd映射關(guān)系檢查其憑據(jù),這也存在了安全性,因為大多數(shù)情況下具有加密的密碼字符串容易可見。nis客戶端可以通過ypcat命令可以查看NIS服務(wù)器上運用者帳號及密碼信息,也可以查看NIS服務(wù)器上的/etc/hosts文件記錄哪些主機信息,想想看這有多么的不安全,用戶也可以輕松查看這些映射信息。更好的做法是強制運用復(fù)雜密碼。 雖然NIS有顯著的安全問題,然而,但在Unix環(huán)境暫時沒有更好的認證工具或賬號管理工具可以和它抗衡,最好的現(xiàn)代方式是運用帶有Kerberos的LDAP。比如Openladp,而且,當(dāng)你的linux服務(wù)器環(huán)境要共享NFs儲存去構(gòu)建你的登錄環(huán)境,你可能就必須運用Nis了。 對于賬號管理和身份驗證還有別的搞定方案嗎? 有! 其中一個選擇是運用Microsoft的Active Directory進行身份驗證。這只適用于混合基礎(chǔ)設(shè)施,有幾種方式可以實現(xiàn)。第一個是用Microsoft自己的NIS服務(wù)器,微軟自從2003版本后加了附加角色,integretion unix management自帶Nis Server的角色,開啟了它以后您的NIS服務(wù)器管理主機就是是Win-AD域控服務(wù)器了,這使得許多Unix / Linux管理員感到不爽。 另一種方式是通過Active Directory的LDAP身份驗證,但這也可能是一個比較復(fù)雜的方式,取決于Unix環(huán)境的大小,總之不僅復(fù)雜有時環(huán)境問題也比較復(fù)雜。 NIS有新版本碼? Nis后有了新工具叫Nis+,為啥呀,因為大家都知道它的不安全性,sun要改良,所以產(chǎn)生了nis+, 它旨在消除在多臺計算機上復(fù)制多個配置數(shù)據(jù)(如用戶帳戶,主機名和地址,打印機信息和單個系統(tǒng)上的NFS磁盤安裝),而不是在主服務(wù)器上運用中央儲存庫,從而簡化系統(tǒng)管理。你可以選擇運用NIS +,但運用過的人都會告訴你,這是一個相當(dāng)不錯的主意,但它表現(xiàn)的并不好,他把本來很簡單的NiS結(jié)構(gòu)變復(fù)雜了。即使NIS +比較新,你會發(fā)現(xiàn)NIS 用的更多,即使創(chuàng)造Nis的Sun / Oracle把NIS +在11.1版本中正式從Solaris中刪除了,媽都不認孩子了,NIS+兒子就沒有存在的必要了,所以只剩NIS這一個兒子了。 優(yōu)雅的常青樹--NIS 選擇任何搞定方案,最重要的是選擇穩(wěn)定性,NIS是一個小而干凈的服務(wù),它可以很容易地與Unix的任何環(huán)境聯(lián)系起來。像現(xiàn)在的unbuntu現(xiàn)在1604的版本、redhat 7都支持nis,vmwere的esxi 6.5也支持NIS.可以說支持所有l(wèi)inux/unix系統(tǒng)。 最好的使用場景是具有許多工作站和計算/編譯服務(wù)器的Unix / Linux開發(fā)環(huán)境,NIS是最好的 搞定方案- 安全風(fēng)險最小,安裝簡單,功能實用。 所以NIS優(yōu)雅的活了這么久雖然不夠安全,但它支持傳統(tǒng)和現(xiàn)代的操作系統(tǒng),它很古老但也很簡單,而且因為太簡單而且有用,所以短期內(nèi)還沒有能替代它的產(chǎn)品,想死也沒那么容易,在未來很長一段時間還會繼續(xù)笑看IT,笑看架構(gòu)。 對于unix/linux賬號管理,除了我(NIS),你還能選擇誰?評論 (0)