เวิร์กสเตชันออนไลน์ของ OnWorks Linux และ Windows

โลโก้

ฟรีโฮสติ้งออนไลน์สำหรับเวิร์กสเตชัน

<ก่อนหน้านี้ | Contents | ถัดไป>

1.9. การจำลองแบบและ TLS


หากคุณได้ตั้งค่าการจำลองแบบระหว่างเซิร์ฟเวอร์ เป็นเรื่องปกติในการเข้ารหัส (StartTLS) การรับส่งข้อมูลการจำลองแบบเพื่อป้องกันการแอบดู ซึ่งแตกต่างจากการใช้การเข้ารหัสด้วยการรับรองความถูกต้องดังที่เราทำข้างต้น ในส่วนนี้ เราจะต่อยอดจากงานตรวจสอบสิทธิ์ TLS


สมมติฐานในที่นี้คือ คุณได้ตั้งค่าการจำลองแบบระหว่างผู้ให้บริการและผู้บริโภคตามหัวข้อ 1.6 “การจำลองแบบ” [p. 123] และได้กำหนดค่า TLS สำหรับการตรวจสอบสิทธิ์บนผู้ให้บริการโดยทำตามหัวข้อ 1.8 “TLS” [p. 129].


ตามที่ระบุไว้ก่อนหน้านี้ วัตถุประสงค์ (สำหรับเรา) ที่มีการจำลองแบบมีความพร้อมใช้งานสูงสำหรับบริการ LDAP เนื่องจากเรามี TLS สำหรับการตรวจสอบสิทธิ์ในผู้ให้บริการ เราจึงต้องใช้แบบเดียวกันสำหรับผู้บริโภค นอกจากนี้ เราต้องการเข้ารหัสทราฟฟิกการจำลองแบบ สิ่งที่ต้องทำคือสร้างคีย์และใบรับรองสำหรับ Consumer แล้วกำหนดค่าตามนั้น เราจะสร้างคีย์/ใบรับรองบนผู้ให้บริการ เพื่อหลีกเลี่ยงการสร้างใบรับรอง CA อื่น จากนั้นโอนเอกสารที่จำเป็นไปยังผู้บริโภค

1. บนผู้ให้บริการ


สร้างไดเร็กทอรีการถือครอง (ซึ่งจะใช้สำหรับการถ่ายโอนในท้ายที่สุด) จากนั้นคีย์ส่วนตัวของผู้บริโภค:


mkdir ldap02-ssl ซีดี ldap02-ssl

sudo certtool --สร้าง-privkey \

--บิต 1024 \

--outfile ldap02_slapd_key.pem


สร้างไฟล์ข้อมูล ldap02.ข้อมูลสำหรับเซิร์ฟเวอร์ Consumer การปรับค่าตาม:


องค์กร = บริษัทตัวอย่าง cn = ldap02.example.com



tls_www_serverการเข้ารหัส_key การลงนาม_key วันหมดอายุ = 3650


สร้างใบรับรองผู้บริโภค:


sudo certtool -- สร้างใบรับรอง \

--โหลด privkey ldap02_slapd_key.pem \

--load-ca-certificate /etc/ssl/certs/cacert.pem \

--load-ca-privkey /etc/ssl/private/cakey.pem \

--แม่แบบ ldap02.info \

--outfile ldap02_slapd_cert.pem


รับสำเนาใบรับรอง CA:


cp /etc/ssl/certs/cacert.pem


เราเสร็จแล้ว ตอนนี้โอน ldap02-ssl ไดเรกทอรีไปยังผู้บริโภค ที่นี่เราใช้ scp (ปรับตามนั้น):


ซีดี ..

scp -r ldap02-ssl ผู้ใช้@ผู้บริโภค:


2. เกี่ยวกับผู้บริโภค


กำหนดค่าการตรวจสอบสิทธิ์ TLS:


sudo apt ติดตั้ง ssl-cert

sudo gpasswd -a openldap ssl-ใบรับรอง

sudo cp ldap02_slapd_cert.pem cacert.pem /etc/ssl/certs sudo cp ldap02_slapd_key.pem /etc/ssl/private

sudo chgrp openldap /etc/ssl/private/ldap02_slapd_key.pem sudo chmod 0640 /etc/ssl/private/ldap02_slapd_key.pem sudo systemctl รีสตาร์ท slapd.service


สร้างไฟล์ /etc/ssl/certinfo.ldif โดยมีเนื้อหาดังต่อไปนี้ (ปรับตามความเหมาะสม):


dn: cn=การกำหนดค่า

เพิ่ม: olcTLSCACertificateFile olcTLSCACertificateFile: /etc/ssl/certs/cacert.pem

-

เพิ่ม: olcTLSCertificateFile

olcTLSCertificateFile: /etc/ssl/certs/ldap02_slapd_cert.pem

-

เพิ่ม: olcTLSCertificateKeyFile

olcTLSCertificateKeyFile: /etc/ssl/private/ldap02_slapd_key.pem


กำหนดค่าฐานข้อมูล slapd-config:



sudo ldapmodify -Y ภายนอก -H ldapi:/// -f certinfo.ldif


กำหนดค่า / etc / default / Slapd เช่นเดียวกับผู้ให้บริการ (SLAPD_SERVICES)

3. เกี่ยวกับผู้บริโภค


กำหนดค่า TLS สำหรับการจำลองแบบฝั่งผู้บริโภค แก้ไขที่มีอยู่ olcSyncrepl แอตทริบิวต์โดยทำเครื่องหมายที่ตัวเลือก TLS บางตัว ในการทำเช่นนั้น เราจะเห็นวิธีการเปลี่ยนค่าของแอตทริบิวต์เป็นครั้งแรก


สร้างไฟล์ Consumer_sync_tls.ldif มีเนื้อหาดังต่อไปนี้:


dn: olcDatabase={1}mdb,cn=config แทนที่: olcSyncRepl

olcSyncRepl: rid=0 provider=ldap://ldap01.example.com bindmethod=simple binddn="cn=admin,dc=example,dc=com" credentials=secret searchbase="dc=example,dc=com" logbase= "cn=accesslog" logfilter="(&(objectClass=auditWriteObject)(reqResult=0))" schemachecking=on type=refreshAndPersist retry="60 +" syncdata=accesslog starttls=critical tls_reqcert=demand


ตัวเลือกพิเศษระบุตามลำดับว่าผู้ใช้บริการต้องใช้ StartTLS และใบรับรอง CA จะต้องยืนยันตัวตนของผู้ให้บริการ นอกจากนี้ ให้สังเกตไวยากรณ์ LDIF สำหรับการเปลี่ยนค่าของแอตทริบิวต์ ('replace')


ใช้การเปลี่ยนแปลงเหล่านี้:


sudo ldapmodify -Y ภายนอก -H ldapi:/// -f Consumer_sync_tls.ldif


และรีสตาร์ทตบ:


sudo systemctl รีสตาร์ท slapd.service


4. บนผู้ให้บริการ


ตรวจสอบเพื่อดูว่ามีการสร้างเซสชัน TLS แล้ว ใน / var / log / syslogหากคุณได้ตั้งค่าการบันทึกระดับ 'conns' แล้ว คุณควรเห็นข้อความที่คล้ายกับ:


ตบ [3620]: conn = 1047 fd = 20 ยอมรับจาก IP = 10.153.107.229:57922 (IP = 0.0.0.0:389) ตบ [3620]: conn = 1047 op = 0 EXT oid = 1.3.6.1.4.1.1466.20037

ตบ [3620]: conn=1047 op=0 STARTTLS

ตบ [3620]: conn=1047 op=0 ผลลัพธ์ oid= err=0 text=

ตบ [3620]: conn = 1047 fd = 20 TLS ที่จัดตั้งขึ้น tls_ssf = 128 ssf = 128 slapd [3620]: conn = 1047 op = 1 BIND dn="cn=admin,dc=example,dc=com" วิธี = 128

slapd [3620]: conn=1047 op=1 BIND dn="cn=admin,dc=example,dc=com" mech=SIMPLE ssf=0 slapd[3620]: conn=1047 op=1 แท็กผลลัพธ์=97 err= 0 ข้อความ


ระบบปฏิบัติการคลาวด์คอมพิวติ้งยอดนิยมที่ OnWorks: