ติดตั้งใบรับรองหลักใน CentOS 6


9

ฉันรู้ว่ามันถูกถามไปแล้ว แต่แม้จะมีการวิจัยหลายชั่วโมงฉันก็หาวิธีแก้ปัญหาไม่ได้ ฉันกำลังพยายามติดตั้งใบรับรองหลักของฉันในเซิร์ฟเวอร์ของฉันเพื่อให้บริการภายในสามารถผูกกันเองโดยใช้ SSL

สิ่งที่ควรรู้เกี่ยวกับรูท CA ใหม่:

  1. Apache httpd และ PHP
  2. ลูกค้า OpenLDAP
  3. Node.js

สำหรับ Apache ฉันต้องการแอปพลิเคชัน PHP เพื่อทราบเกี่ยวกับใบรับรองรูทดังนั้นหากไซต์เชื่อมต่อกับเว็บไซต์ SSL อื่น (ลงชื่อโดย CA เดียวกัน) มันใช้งานได้ดีและไม่บ่นเกี่ยวกับใบรับรองที่ลงชื่อด้วยตนเอง

สำหรับ OpenLDAP ฉันเชื่อว่ามันเหมือนกับ PHP โมดูลที่ใช้ค่อนข้างเก่าคือ Net_LDAP2 ติดตั้งกับ PEAR ฉันพยายามแก้ไขการกำหนดค่า openldap ในเครื่อง แต่ดูเหมือนว่าระบบไม่ได้ใช้งาน

Last Node.js ซึ่งฉันใช้สำหรับ parsoid เซิร์ฟเวอร์ node.js ต้องเชื่อถือ CA เพื่อทำการเชื่อมต่อ SSL ที่ดี

ฉันพยายามเพิ่มใบรับรองใน /etc/pki/tls/certs/ca-bundle.crt ด้วยความสำเร็จเพียงเล็กน้อย

แม้ว่า httpd จะไม่เห็นรูท CA แต่ฉันก็สามารถทำให้บริการอื่น ๆ ใช้งานได้เช่น tomcat และ 389

ขอบคุณสำหรับการสนับสนุนของคุณ.


1
เกือบจะต้องเป็นคำถามสามข้อ ฉันอาจจะผิด แต่อาจมีวิธีการทั้งระบบที่เชื่อถือได้ใบรับรอง CA สำหรับบริการเหล่านั้นทั้งหมด หากไม่มีวิธีการทั่วทั้งระบบการแยกคำถามออกเป็นสามข้ออาจจำเป็นเพื่อให้ได้คำตอบที่เป็นประโยชน์
Zoredache

คุณลองทำอะไรบ้าง นี่เป็นสิ่งที่ค้นคว้าได้ง่าย ๆ เพราะมันค่อนข้างธรรมดา ถ้าเรารู้ว่าทำไมคุณกำลังมีปัญหาเราอาจจะสามารถให้คำตอบที่ดีกว่าSSLCACertificateFileใน/etc/httpd/conf.d/ssl.conf, TLS_CACERTใน/etc/openldap/ldap.conf(OpenLDAP ไคลเอนต์) TLSCACertificateFileใน/etc/openldap/slapd.conf(OpenLDAP Server) ฯลฯ ..
แอรอนเพลย์

Apache httpd เป็นสาเหตุหลักที่ทำให้ฉันโพสต์คำถามนี้ ฉันคิดว่ามันอ่านใบรับรองทั่วทั้งระบบ แต่การแก้ไขไม่ได้ผล
John White

คำตอบ:


7

ในกล่อง RHEL 6 ของฉันman 8 update-ca-trustหน้าคู่มือมีคำอธิบายที่กว้างขวางเกี่ยวกับวิธีที่ใบรับรอง CA ทั่วทั้งระบบและความน่าเชื่อถือที่เกี่ยวข้องสามารถ / ควรได้รับการจัดการ

บ่อยกว่านั้นการกำหนดค่าไม่เป็นแอปพลิเคชันเฉพาะตามความคิดเห็นข้างต้นระบุ


2
ไม่มีคู่มือดังกล่าวสำหรับ CentOS ฉันเชื่อว่าทั้งสองระบบมีเครื่องมือผู้ดูแลระบบที่แตกต่างกัน
John White

พวกเขาส่วนใหญ่เหมือนกัน แต่ก็มีความแตกต่างเล็ก ๆ น้อย ๆ เช่นนั้นทำให้ฉันรู้สึกแย่ เป็นส่วนหนึ่งของ ca-certificate rpm สำเนา man page สามารถพบได้ที่นี่
HBruijn

CentOS 6.5 ของฉันมี man page สำหรับ update-ca-trust @ Mc120k คุณติดตั้ง ca-certificate-2013 แล้วหรือยัง
8None1

1

ฉันเขียนบางบรรทัดคำสั่งเพื่อให้สามเณรเข้าถึงได้ง่ายขึ้นใน SSL:

นำทางไปยังโฟลเดอร์ PKI

$ cd /etc/pki/tls/certs/
 

ลิงก์ VERIFY (ยาก) และใบรับรองสำรอง

$ cp ca-bundle.crt /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem.bak
$ cp ca-bundle.trust.crt /etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt.bak
 

อัพโหลด CA chain ไปยัง CentOS

$ scp <cachain> root@sydapp28:/tmp 
 

เชื่อมต่อกับ CentOS ผ่าน SSH (Putty?) หรือท้องถิ่น

$ ssh -C root@sydapp28
 

หาก PKCS12 CAChain:“ แปลงใบรับรองลูกโซ่ CA ภายในของคุณเป็นรูปแบบ PEM & นำส่วนหัวออก”:

$ cd /tmp ; openssl pkcs12 -nodes -in <cachain.pfx.p12> | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > cachain.pem
 

ผนวก CA ภายในของคุณกับ CentOS

$ cat /tmp/cachain.pem >> /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
$ cat /tmp/cachain.pem >> /etc/pki/ca-trust/extracted/pem/ca-bundle.trust.crt
$ reboot
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.