밑에도 글을 잠시 써보았으나 고수님들의 도움을 간절히 원하고 있습니다.
우선 webmin + openldap + ssl + kerberos + apache로 SSO를 구현하려 합니다.
저희 각 팀들 서버들은 apache setting이 되어 있고 현재 openldap이랑 연동해서 잘 쓰고 있습니다.
하지만 SSO를 구현하려고 kerberos를 접목하려합니다. 그런데 쉽게 안되네요 ;
우선 kerberos까지의 설치는 전부 구현해 놓았습니다.
ldapsearch -H ldap://infraware.net -b dc=infraware,dc=net -x ---> 이상없이 잘 나옵니다 Simple auth, no encryption
ldapsearch -H ldaps://infraware.net -b dc=infraware,dc=net -x ---> 이상없이 잘 나옵니다. Simple auth, SSL via LDAPS
ldapsearch -H ldap://infraware.net -ZZ -b dc=infraware,dc=net -x ---> 이상없이 잘 나옵니다. Simple auth, SSL via StartTLS
ldapsearch -H ldap://infraware.net -b dc=infraware,dc=net ---> 이상없이 잘 나옵니다. SASL auth, no encryption
ldapsearch -H ldaps://infraware.net -b dc=infraware,dc=net ---> 이상없이 잘 나옵니다. SASL auth, SSL via LDAPS
ldapsearch -H ldap://infraware.net -ZZ -b dc=infraware,dc=net ---> 이상없이 잘 나옵니다. SASL auth, SSL via StartTLS -------------------
sasl2-sample-server -s ldap -m GSSAPI
sasl2-sample-client -s ldap -m GSSAPI infraware.net
successful authentication closing connection ----> 이상 없이 잘 나옵니다
[root@infraware migration]# ldapsearch ---> 이상없이 잘 나옵니다
[root@infraware migration]# ldapwhoami
SASL/GSSAPI authentication started SASL username: test@INFRAWARE.NET SASL SSF: 56 SASL installing layers dn:uid=test,cn=infraware.net,cn=gssapi,cn=auth Result: Success (0)
[root@infraware migration]# ----> 이상없이 잘 나옵니다.
이상으로 LDAP <--> SASL <--> GSSAPI <--> Kerberos를 구현했습니다.
문제는 SSO를 어떻게 구성해야하는 문제가 있네요 .. mapping으로 구성하는 것인지 이부분을 정확하게 모르겠습니다. 우선 테스트로
ServerName infra DocumentRoot /var/www/html
ServerAdmin lucifertear@gmail.com
DocumentRoot /home
ServerName infraware.net
ErrorLog /var/log/httpd/infraware.net-error_log
CustomLog /var/log/httpd/infraware.net-access_log common
AuthName "Kerberos Login"
AuthType Kerberos
KrbServiceName HTTP
Krb5Keytab /etc/krb5_httpd.keytab
KrbAuthRealm INFRAWARE.NET
KrbMethodNegotiate off
KrbSaveCredentials off
KrbMethodK5Passwd off
KrbVerifyKDC on
AuthType Basic
AuthBasicProvider ldap
AuthLDAPURL "ldap://infraware.net:389/dc=infraware,dc=net?uid?sub?(objectClass=*)"
AuthzLDAPAuthoritative off
# Require valid-user Require valid-user
ServerAdmin lucifertear@gmail.com
DocumentRoot /home
ServerName test1.infraware.net
ErrorLog /var/log/httpd/test1.infraware.net-error_log
CustomLog /var/log/httpd/test1.infraware.net-access_log common
AuthName "Kerberos Login"
AuthType Kerberos
Krb5Keytab /etc/krb5_httpd.keytab
KrbAuthRealm INFRAWARE.NET
KrbMethodNegotiate off
KrbSaveCredentials off
KrbVerifyKDC on
AuthType Basic
AuthBasicProvider ldap
AuthLDAPURL "ldap://infraware.net:389/dc=infraware,dc=net?uid?sub?(objectClass=*)" AuthzLDAPAuthoritative off Require valid-user
아파치를 이렇게 구성한것은 싱글사이온 테스트를 위해 가상 사이트를 만들어서 테스트 하는데 /home/kerber에 로그인하고 /home/kerberos2에 다시 로그인을 물어보는 창이 뜨네요 ... 후 .. 고수님들 도움 부탁드립니다.
|