歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

kerberos的安裝配置

  kerberos是由MIT開發的提供網絡認證服務的系統,很早就聽說過它的大名,但一直沒有使用過它。它可用來為網絡上的各種server提供認證服務,使得口令不再是以明文方式在網絡上傳輸,並且聯接之間通訊是加密的;它和PKI認證的原理不一樣,PKI使用公鑰體制(不對稱密碼體制),kerberos基於私鑰體制(對稱密碼體制)。    本篇文章不打算詳細講解kerberos的工作原理,而是側重介紹在redhat8.0環境下如何使用kerberos自己提供的Ktelnetd,Krlogind,Krshd來替代傳統的telnetd,rlogind,rshd服務,有關kerberos工作的原理可以參考《Kerberos:AN Authentication Services for Computer Networks》。    安裝環境:一台i386機器。  安裝包:krb5-server-1.2.5-6,krb5-workstation-1.2.5-6,krb5-libs-1.2.5-6  rpm -ivh krb5-libs-1.2.5-6.i386.rpm  rpm -ivh krb5-server-1.2.5-6.i386.rpm  rpm -ivh krb5-workstation-1.2.5-6.i386.rpm     上述要求滿足後,我們就可以先配KDC服務器,然後再配Ktelnetd,Krlogind,Krsh服務器,最後就可以使用krb5-workstation提供的telnet,rlogin,rsh來登錄這些服務了。下面是安裝步驟:    1、生成kerberos的本地數據庫  kdb5_util create -r EXAMPLE.COM -s   這個命令用來生成kerberos的本地數據庫,包括幾個文件:principal,principal.OK,principal.kadm5,principal.kadm5.lock. -r 指定realm(kerberos術語),我們隨便取一個叫EXAMPLE.COM.    2、生成賬號  kerberos用principal(kerberos術語)來表示realm下的一個帳戶,表示為primary/instance@realm,舉個例子就是username/[email protected],這裡假設9.181.92.90是你機器的ip地址.    在數據庫中加入管理員帳戶:  /usr/kerberos/sbin/kadmin.local  kadmin.local: addprinc admin/[email protected]  在數據庫中加入用戶的帳號:  kadmin.local: addprinc username/[email protected]  在數據庫中加入Ktelnetd,Krlogind,Krshd公用的帳號:  kadmin.local: addprinc -randkey host/[email protected]     3、檢查/var/kerberos/krb5kdc/kadm5.keytab是否有下列語句:  */[email protected] *   若沒有,那麼就添上。    4、修改/etc/krb5.conf文件,修改所有的realm為EXAMPLE.COM,並且加入下列句子  kdc = 9.181.92.90:88  admin_server = 9.181.92.90:749    5、在/etc/krb.conf中加入下列語句:  EXAMPLE.COM  EXAMPLE.COM 9.181.92.90:88  EXAMPLE.COM 9.181.92.90:749 admin server    6、啟動kdc服務器和Ktelnetd,Krlogind,Krshd  /etc/init.d/krb5kdc restart  chkconfig klogin on  chkconfig kshell on  chkconfig eklogin on  chkconfig krb5-telnet on  /etc/init.d/xinetd restart    7、制作本地緩存  將username/[email protected]的credentials(kerberos術語)取到本地做為cache,這樣以後就可以不用重復輸入passWord了。  kinit username/9.181.92.90   如果順利的話,在/tmp下面會生成文件krb5*;這步如果不通,那麼就必須檢查以上步驟是否有漏。  可以用klist命令來查看credential。    8、導出用戶密匙  eXPort host/[email protected]的key到/etc/krb5.keytab,Ktelnetd、Krlogind和Krshd需要/etc/krb5.keytab來驗證username/9.181.92.90的身份。  kadmin.local: ktadd -k /etc/krb5.keytab host/9.181.92.90    9、修改~/.k5login文件  在其中加入username/[email protected],表示允許username/[email protected]登錄該帳戶    cat username/[email protected] >>~/.k5login     10、測試kerberos客戶端  krsh 9.181.92.90 -k EXAMPLE.COM ls  krlogin 9.181.92.90 -k EXAMPLE.COM  rlogin 9.181.92.90 -k EXAMPLE.COM  rsh 9.181.92.90 -k EXAMPLE.COM  telnet -x 9.181.92.90 -k EXAMPLE.COM




Copyright © Linux教程網 All Rights Reserved