การติดตั้ง Shibboleth Single Sign-On
ตอนที่ 4 - ติดตั้ง Tomcat และ SSL
6. ติดตั้ง Tomcat
ก็อปปีโฟลเดอร์ apache-tomcat-6.0.18 จากในโฟลเดอร์ c:\sso\setup
ออกมาวางไว้ที่ c:\sso เช่นนี้
ให้ดับเบิลคลิกไฟล์ startup.bat ที่อยู่ในโฟลเดอร์ c:\sso\apache-tomcat-6.0.18\bin
เพื่อรัน Tomcat
เบราซ์ไปที่ URL http://localhost:8080 ควรจะปรากฏหน้าโฮมเพจของ
Tomcat ดังนี้
หมายเหตุ – หาก Tomcat ของท่านมีปัญหาไม่สามารถสตาทร์ขึ้นได้เนื่องจากมีการคอนฟิกผิดพลาดค้างไว้
หรือมีแอพพลิเคชันที่ผิดพลาดติดตั้งไว้ให้ไปดาวน์โหลด Tomcat ตัวใหม่มาจากเว็บไซต์ http://jakarta.apache.org/tomcat เพื่อใช้กับการทดลองนี้
7. ทำให้ Tomcat ใช้งาน SSL ได้
เนื่องจาก Shibboleth จะรับส่งข้อมูลสำคัญไปกับการสื่อสารแบบ
SSL (Secure Socket Layer) หรือ TLS (Transport Layer
Secure) เท่านั้น ดังนั้นเพื่อให้สามารถทำงานได้อย่างสมบูรณ์
เราจำเป็นต้องกำหนดค่าเริ่มต้นให้กับระบบ Tomcat สามารถใช้งาน
SSL ได้อย่างถูกต้องด้วย
7.1 ตรวจสอบ Keystore ของ IdP
เมื่อติดตั้ง IdP เสร็จแล้วไฟล์ที่เป็นคีย์จะเก็บอยู่ที่โฟลเดอร์
c:\sso\shibboleth-idp\credentials ดังนี้
เราจำเป็นต้องกำหนดค่าคอนฟิกของ
Tomcat ให้มาใช้ไฟล์เหล่านี้เพื่อนำไปทำเป็นการสื่อสารแบบ
SSL
7.2 แก้ไขไฟล์ server.xml
เปิดไฟล์ server.xml ที่ตำแหน่ง c:\sso\apahce-tomcat-6.0.18\conf
แล้วแก้ไขเนื้อหาดังนี้
ซอร์สโค้ด 1 บางส่วนของไฟล์ server.xml ที่ถูกแก้ไข
(เปิดคอมเมนต์พอร์ต 8443 และเพิ่ม keystore
76
|
-->
|
77
|
<!-- Define a SSL HTTP/1.1 Connector on port 8443
|
78
|
This connector uses the JSSE configuration, when using APR, the
|
79
|
connector should be using the OpenSSL style configuration
|
80
|
described in the APR documentation -->
|
81
|
|
82
|
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
|
83
|
maxThreads="150" scheme="https" secure="true"
|
84
|
clientAuth="false" sslProtocol="TLS"
|
85
|
keystoreFile="c:/sso/shibboleth-idp/credentials/idp.jks"
|
86
|
keystorePass="password" keyAlias="127.0.0.1"/>
|
87
|
|
88
|
<!-- Define an AJP 1.3 Connector on port 8009 -->
|
89
|
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/>
|
90
|
|
91
|
|
ให้สังเกตว่าเราเพิ่มแอททริบิวท์เข้าไปที่
Connector ของพอร์ต 8443 สามตัวคือ keystoreFile, keystorePass และ keyAlias
โดย keyAlias เป็นชื่อเครื่องตรงกับที่เรากำหนดให้ขณะที่ติดตั้ง
IdP
บันทึกไฟล์ server.xml ไว้แล้วรีสตาทร์ Tomcat ใหม่อีกครั้ง หลังจากนั้นเบราซ์ไปที่ https://localhost:8443 ควรจะปรากฏผลลัพธ์ดังนี้
คลิกปุ่ม View Certificate จะปรากฏรายละเอียดของใบรับรองอิเล็คทรอนิกส์
X509 ดังนี้
ปิดหน้าต่าง Certificate แล้วคลิกปุ่ม Yes เข้าสู่หน้าโฮมเพจของ Tomcat แบบ https ดังนี้
8. ติดตั้ง IdP กับ Tomcat
วิธีการติดตั้ง IdP กับ Tomcat จะต้องนำไฟล์
idp.war ไปดีพลอย (Deploy) ดังนั้นให้ก็อปปีไฟล์
idp.war จากโฟลเดอร์ c:\sso\shibboleth-idp\war ไปวางไว้ที่ c:\sso\apache-tomcat-6.0.18\webapps
และรอสักครู่
ที่หน้าต่างคอนโซลจะปรากฏข้อความดังนี้
เมื่อดีพลอยครั้งแรกจะเกิดข้อผิดพลาดเนื่องจาก IdP ไม่พบ SAX Parser ที่จะใช้งาน
8.1 เติม SAX Parser ให้กับ IdP บน Tomcat
ก็อปปีไฟล์ jar ทุกไฟล์ในโฟลเดอร์ c:\sso\shibboleth-idp\lib\endorsed
ก็อปปีไฟล์ jar ทุกไฟล์ในโฟลเดอร์ endorsed ไปวางไว้ที่ c:\sso\apache-tomcat-6.0.18\webapps\idp\WEB-INF\lib แล้วรีสตาทร์ Tomcat ใหม่อีกครั้ง
ให้ทดลองเบราซ์ไปที่ https://localhost:8443/idp/login.jsp ควรจะปรากฏภาพดังนี้
ความคิดเห็น
แสดงความคิดเห็น