亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Linux的PAM安全認(rèn)證機(jī)制

        2017-03-09 04:17:13
        網(wǎng)絡(luò)安全和信息化 2017年1期
        關(guān)鍵詞:配置文件命令賬戶

        引言:對(duì)于Linux來說,如果提高安全性,防止非法用戶登錄系統(tǒng),是不可忽視的安全問題。因此,如何鑒別用戶的身份,成了問題的關(guān)鍵。使用PAM認(rèn)證機(jī)制,可以簡(jiǎn)單輕松的在系統(tǒng)或者程序中插入不同的認(rèn)證模塊,來靈活高效的的鑒別用戶的身份。

        使 用PAM(Plugable Authentication Modules,即可插入的認(rèn)證模塊)認(rèn)證機(jī)制,可以簡(jiǎn)單輕松的在系統(tǒng)或者程序中插入不同的認(rèn)證模塊,來靈活高效的的鑒別用戶的身份。因?yàn)镻AM模塊和程序是相互獨(dú)立的,可以根據(jù)需要自由的插入各種認(rèn)證模塊,在程序或服務(wù)中集成多種身份認(rèn)證機(jī)制,大大來提高系統(tǒng)和程序的安全性。

        使用NSS管理用戶信息

        一般來說,系統(tǒng)對(duì)登錄者的信息進(jìn)行驗(yàn)證,依靠的是“/etc/passwd”或者“/etc/shadow”密碼文件。在默認(rèn)情況下針對(duì)的是本地登錄。如果系統(tǒng)中啟動(dòng)了FTP服務(wù),訪問者也可以利用本地賬戶來通過FTP服務(wù)的驗(yàn)證。諸如 Samba,MySQL,Apache等服務(wù),是無法利用本地賬戶進(jìn)行驗(yàn)證的,必須依靠其本身的認(rèn)證設(shè)置。

        按照傳統(tǒng)的Unix認(rèn)證方式,當(dāng)用戶訪問郵件服務(wù)器等應(yīng)用程序時(shí),需要提交賬戶名和密碼,該應(yīng)用程序會(huì)利用C Library庫中的函數(shù)得到對(duì)應(yīng)的密碼哈希值,并將其和存儲(chǔ)在本地的系統(tǒng)密碼文件中的哈希值進(jìn)行比對(duì)。隨著系統(tǒng)中安裝的服務(wù)和程序的增多,為了便于賬戶信息集中管控,可以借助于LDAP目錄來實(shí)現(xiàn)。這樣,服務(wù)或者應(yīng)用為了實(shí)現(xiàn)認(rèn)證,就必須重寫C Library庫中的函數(shù),使其支持LDAP賬戶信息認(rèn)證。這種方法實(shí)現(xiàn)起來很繁瑣,為了解決該問題,最好辦法涉及到了NSS(Name Service Switch)。

        NSS其實(shí)是一些特定的模塊,和一系列的庫文件對(duì)應(yīng)。應(yīng)用程序只需添加所需的模塊,讓其負(fù)責(zé)上述重寫C Library庫中的函數(shù)的功能,而無需應(yīng)用程序自身的參與。在登錄時(shí)系統(tǒng)會(huì)將賬戶名轉(zhuǎn)換為唯一的UID,這其實(shí)就涉及到了名稱解析機(jī)制,這是由NSS負(fù)責(zé)。

        在Linux中,賬戶名可能存儲(chǔ)在不同的位置,這就必然需要多種名稱解析方法與之對(duì)應(yīng)。在NSS的配置文件中,可以管理和配置這些解析方法。執(zhí)行“vim /etc/nsswitch.conf”命令,在其中可以添加所需的NSS模塊。例如“hosts:”一行中可以添加“dns”,表示在執(zhí)行名稱解析時(shí)可以調(diào)用NSS中的DNS模塊來實(shí)現(xiàn)。在“password:”行中默認(rèn)存在“files”項(xiàng),表示從本地密碼文件中提取賬戶信息,在其后可以添加“LDAP”,表示允許通過NSS的LDAP模塊來定位目錄服務(wù)器位置,進(jìn)而查找相關(guān)賬戶名等。

        在“shadow:files”一行中就說明了NSS和PAM存在的一定的聯(lián)系,即當(dāng)NSS完成賬戶名稱的定位以及將其轉(zhuǎn)換為UID之后,還會(huì)告訴 PAM 到“/etc/shadow”文件中查找該賬戶對(duì)應(yīng)的密碼信息,即將用戶的輸入的密碼通過MD5(Salt)的方式轉(zhuǎn)換為哈希值,然后與“/etc/shadow”文件中對(duì)應(yīng)的賬戶的密碼哈希進(jìn)行比對(duì),如果一致則表示密碼正確。當(dāng)然這種關(guān)聯(lián)并非絕對(duì),實(shí)際上PAM認(rèn)證機(jī)制也可以不用借助于NSS的名稱解析服務(wù)來查找用戶密碼存儲(chǔ)位置。對(duì)于很多服務(wù)或者程序來說,對(duì)應(yīng)的PAM認(rèn)證也可以自行查找相關(guān)密碼的存儲(chǔ)位置。執(zhí)行“getent password”命令,就可以從“nsswitch.conf”文件中名為的“password”數(shù)據(jù)庫名中查詢其內(nèi)容,還可以執(zhí)行“getent shadow”,“getent group”,“getent hosts” 等命令,來查詢對(duì)應(yīng)的內(nèi)容。

        查看PAM模塊和配置文件

        執(zhí)行“cd/lib”命令,根據(jù)不同的系統(tǒng)版本,進(jìn)入對(duì)應(yīng)的文件夾,例如對(duì)于64位系統(tǒng)來說,可以進(jìn)入其中的“l(fā)ib64”目錄,執(zhí)行“l(fā)s”命令,可以顯示大量的模塊信息。要想支持一個(gè)新的New Service名稱服務(wù),就必須在上述目錄中安裝名稱格式為“l(fā)ibnss_具體的服務(wù)名.so”的模塊文件。

        這樣,當(dāng)用戶訪問某個(gè)程序或者服務(wù)時(shí),由特定的NSS模塊負(fù)責(zé)處理用戶名信息,而密碼的驗(yàn)證和管控則交給相應(yīng)的PAM模塊來處理,程序和服務(wù)本身并不參與這些過程。其最大優(yōu)勢(shì)是實(shí)現(xiàn)了賬戶的集中管理,大大提高了安全管理的靈活性。例如,執(zhí)行“authconfig-tui”命令,在認(rèn)證配置界面左側(cè)的“User Information”欄中可以選擇賬戶名稱查找和解析方式,包括“Cache Information”,“User LDAP”,“Use NIS”,“Use IPAv2”,“Use Winbind”等。

        這樣,對(duì)于用戶名稱信息就交由LDAP模塊負(fù)責(zé),對(duì)其的認(rèn)證則交由Kerberos模塊負(fù)責(zé)。和Kerberos模塊對(duì)應(yīng)的是“/lib64/security/pam_krb5.so”文件,該文件負(fù)責(zé)調(diào)用Kerberos認(rèn)證,而無需應(yīng)用程序參與。在上述“l(fā)ib64”目錄中進(jìn)入“security”目錄,執(zhí)行“l(fā)s”命令,可以查看所有的PAM模塊文件,這些庫文件都是以“PAM_”開頭的。例如,按照上述方法在本地“/etc/shadow”文件中實(shí)現(xiàn)密碼認(rèn)證,就需要使用到其中的“PAM_unix.so”模塊。PAM認(rèn)證模塊同樣工作于中間層,在應(yīng)用程序和系統(tǒng)之間提供認(rèn)證功能。程序或服務(wù)只需調(diào)用對(duì)應(yīng)的PAM模塊,就可簡(jiǎn)單快捷的來驗(yàn)證用戶的身份。

        除了系統(tǒng)自帶的PAM模塊外,用戶也可以手工安裝所需的PAM模塊,例如當(dāng)執(zhí)行Kerberos認(rèn)證的“kerberos5.so”庫文件并不存在時(shí),可以執(zhí)行“yum provide "/lib64/security/pam_krb5.so"”命令來查找該文件來自何處。執(zhí)行“yum–y install pam_krb5”命令,來安裝該庫文件。當(dāng)安裝了一個(gè)新的PAM模塊,就相當(dāng)于提供了一種新的認(rèn)證方式。只要修改程序的PAM配置信息,就可以立即讓該認(rèn)證方式生效。

        PAM配置文件中的控制參數(shù)

        使 用“required”,“requisite”,“sufficient”,“optional”等參數(shù),可以對(duì)上述管理組進(jìn)行有效控制。對(duì)于“required”來說,執(zhí)行的認(rèn)證必須成功,否則繼續(xù)保持之后的測(cè)試,但是最后的結(jié)果是失敗的。例如當(dāng)?shù)卿汱inux時(shí),先輸入用戶名,即使輸入錯(cuò)誤的用戶名,系統(tǒng)也不會(huì)提示錯(cuò)誤,而是允許繼續(xù)輸入密碼,但是最終的結(jié)果是無法登錄系統(tǒng)。例如對(duì)于“session required pam_limits.so” 來說,會(huì)執(zhí)行限制訪問方面的檢測(cè)。如在上述“l(fā)imits.conf”文件中添加“yonghu1-maxlogins 2”一行,表示只允許“yonghu1”用戶最多登錄2個(gè)控制臺(tái)。這樣,當(dāng)其登錄的控制臺(tái)數(shù)量大于預(yù)設(shè)值后就拒絕其繼續(xù)登錄。

        對(duì)于“requisite”來說,如果執(zhí)行的驗(yàn)證失敗,則立即返回失敗信息。例如,在登錄時(shí),如果密碼錯(cuò)誤,則立即結(jié)束測(cè)試并退出。對(duì)于“sufficient”來說,不管之前的認(rèn)證是否通過,只要該次認(rèn)證通過,就表示測(cè)試成功。對(duì)于“optional”參數(shù)來說,通常和“session”管理組配合使用?!皊ession optional pa m_kb r5”,“se ssion optional pam_ldap.so”來說,表示不管認(rèn)證成功與否,都需要在日志中記錄相關(guān)信息,例如何時(shí)認(rèn)證成功/失敗等。但這對(duì)于最終的認(rèn)證結(jié)果沒有什么影響。

        解析簡(jiǎn)單的PAM配置文件

        以一個(gè)簡(jiǎn)單的PAM配置文件為例來分析其功能。例如打開某個(gè)PAM配置文件,其第一行為“auth required pam_env.so”,其功能是通過“pem_env.so”文件,根據(jù)“/etc/security/pam_env.conf”文件給出的變量設(shè)置一個(gè)環(huán)境?!癮uth sufficient pam_unix.so likeauth nullok”一行的作用是調(diào)用“pam_unix.so”模塊來檢測(cè)用戶的密碼,其中的“l(fā)ikeauth”參數(shù)表示允許用戶在輸入密碼時(shí)打錯(cuò)字或者更換密碼字符,只要最終輸入的是正確的密碼即可,“nullok”參數(shù)允許用戶使用空白的密碼,出于安全考慮,最好不要使用該參數(shù)。如果用戶輸入的密碼正確,就不必執(zhí)行以下檢測(cè)了。

        “auth required pam_deny.so”行的作用是拒絕訪問,表示密碼出錯(cuò)將拒絕用戶登錄?!癮ccount required pam_unix.so”行的作用是檢查該用戶是不是一個(gè)合法的賬戶以及其是否失效,注意這里使用了“required”管理組,說明只要是無效賬戶,即使其余的檢測(cè)通過也將拒絕登錄。“password required pam_cracklib.so retry=3”行的作用是檢查用戶輸入的密碼是不是常見的單詞,如果是的話將不允許其作為密碼使用,“retry=3”參數(shù)表示擁有三次輸入機(jī)會(huì),這里使用“required”管理組,如果出錯(cuò)將無法登錄。

        “password sufficient pam_unix.so use_authtok md5 shadow”行的作用是如果用戶已經(jīng)擁有了身份驗(yàn)證令牌,就不需提示用戶輸入密碼。因?yàn)橛脩粢呀?jīng)輸入了密碼,而且經(jīng)過了驗(yàn)證,就將該密碼經(jīng)過MD5加密后存放到“/etc/shadow”文件 中?!皃assword required pam_deny.so”行的作用是以上驗(yàn)證失敗,將拒絕用戶登錄。“session required pam_limits.so”行的作用是根據(jù)“/etc/security/limits.conf”文件的內(nèi)容限制用戶的對(duì)系統(tǒng)資源使用情況,包括文件打開的數(shù)量,內(nèi)存使用量,允許訪問進(jìn)程數(shù)量,最大登錄次數(shù)等?!皊ession required pam_unix.so”行的作用是將本次登錄時(shí)間信息寫入到“l(fā)astlog”文件中的“最后一次登錄時(shí)間”,將原來的最后一次登錄時(shí)間信息提交給“/bin/login”程序。

        PAM認(rèn)證的常見實(shí)例

        使 用“vim /etc/pam.d/system-auth”命令,將其中的“auth required pam_deny.so”行修改為“auth required pam_permit.so”,將“password required pam_deny.so”行修改為“password required pam_permit.so”就會(huì)產(chǎn)生一個(gè)奇特的效果,不管用戶輸入什么密碼,都可以順利登錄。當(dāng)然,在實(shí)際中是需要嚴(yán)格控制訪問權(quán)限的。例如只允許root用戶可以從本地登錄,只允許“yonghu1”用戶從網(wǎng)址192.168.1.100登 錄,可以執(zhí)行“vim /etc/pam.d/login”命令,在“l(fā)ogin”配置文件中第二行之后添加“auth required pam_access.so accessfile=/etc/login.conf”行,使 用了“pam_access”模 塊,通過配置文件“/etc/login.conf”來進(jìn)行登錄控制。使 用“vim /etc/login.conf”命令,在該文件中添加“+:root:LOCAL”,“:yonghu1:192.168.1.100”,“-:ALL:ALL”等語句,就實(shí)現(xiàn)了上述功能,其中的“+”參數(shù)表示允許訪問,“-”參數(shù)表示拒絕訪問。

        如果想更改登錄時(shí)系統(tǒng)顯示的內(nèi)容,可以執(zhí)行“vim/etc/issue”命令來設(shè)置需要顯示的內(nèi)容。之后執(zhí)行“vim/etc/pam.d/login”命 令,在其中添加“auth pam_issue.so issue=/etc/issue”行即可。如果不希望有些用戶使用SSH安全連接,可以在“/etc/allowsshd”文 件中添加所需的賬戶,之后在“/etc/pam.d/sshd”配 置文件中添加“auth required pam_listfile.so onerr=fail item=user sense=allow file=/etc/allowsshd”一行,就可禁止其使用SSH。

        在“/etc/security/time.conf”文件中添加“l(fā)ogin;tty*&;!ttyp*;!root;!Al0000-2400” 和“xxx;*;!yonghu1;Wd 0000-2400|wk1800-0800”兩行語句,表示禁止非Root賬戶在任意時(shí)間段從控制臺(tái)登錄,同時(shí)允許非“yongh1”的賬戶在非工作時(shí)間段訪問名為“xxx”的服務(wù)。為了防止DoS類型的攻擊,可以對(duì)系統(tǒng)中所有的用戶資源使用情況進(jìn)行限制,例如編輯“/etc/security/limits.conf”文件,在其中添 加“* hard core 0”,“*hard rss 50000”,“* hard nproc 20”,表示禁止所有用戶調(diào)試文件,限制其最多可以訪問50個(gè)進(jìn)程,限制其內(nèi)容使用量為50MB。在“/etc/pam.d/login”文件中添 加“session required /etc/security/limits.conf”,這樣當(dāng)用戶登錄之后,就會(huì)受到上述限制。為了防止用戶隨意使用“su”命令,切換到root環(huán)境,可以執(zhí)行“vim/etc/pam.d/su”命 令,在其中添加“auth sufficient pam_rootok.so debug”,“auth required pam_wheel.so group=aut”。 這樣,只有“aut”組中的賬戶才可以使用“su”命令,切換到root環(huán)境。

        猜你喜歡
        配置文件命令賬戶
        提示用戶配置文件錯(cuò)誤 這樣解決
        只聽主人的命令
        搭建簡(jiǎn)單的Kubernetes集群
        互不干涉混用Chromium Edge
        探索自由貿(mào)易賬戶體系創(chuàng)新應(yīng)用
        外匯賬戶相關(guān)業(yè)務(wù)
        忘記ESXi主機(jī)root密碼怎么辦
        父親的股票賬戶
        特別健康(2018年4期)2018-07-03 00:38:20
        移防命令下達(dá)后
        這是人民的命令
        亚洲国产成人精品激情资源9| 狠狠色综合7777久夜色撩人| 少妇装睡让我滑了进去| 亚洲熟妇一区无码| 国产三级在线观看高清| 国产av一区二区三区性入口| 国产精品亚洲欧美大片在线看| 98bb国产精品视频| 欧美亚洲国产片在线播放| 最新国产在线精品91尤物| 国产一区二区三区视频了| 男女交射视频免费观看网站| 亚洲色大成网站www久久九九| 亚洲成在人线久久综合| 日韩av中文字幕亚洲天| 久久精品人妻少妇一二三区| 99久久精品日本一区二区免费| 啪啪无码人妻丰满熟妇| 伊人狼人影院在线视频| 亚洲综合另类小说色区| 无码国产69精品久久久孕妇| 国产精品一区二区三级| 国产午夜福利小视频在线观看| 久久精品中文字幕| 天天干夜夜操| 亚洲AⅤ乱码一区二区三区| a黄片在线视频免费播放| 欧美性受xxxx狂喷水| 99精品一区二区三区免费视频| 国产性感主播一区二区| 大肉大捧一进一出好爽视频动漫| 四川丰满少妇被弄到高潮 | 色一情一乱一乱一区99av| 国产亚洲精品日韩综合网| 亚洲中文字幕精品久久久| av色综合久久天堂av色综合在| 精品乱码卡1卡2卡3免费开放| 亚洲中文字幕在线第二页| 午夜视频在线观看视频在线播放| 人妻少妇精品专区性色av| 阿v视频在线|