<Trước | Nội dung | Tiếp theo>
1.9. Nhân rộng và TLS
Nếu bạn đã thiết lập sao chép giữa các máy chủ, thông thường bạn nên mã hóa (StartTLS) lưu lượng sao chép để ngăn chặn việc nghe trộm. Điều này khác với việc sử dụng mã hóa với xác thực như chúng tôi đã làm ở trên. Trong phần này, chúng tôi sẽ xây dựng dựa trên công việc xác thực TLS đó.
Giả định ở đây là bạn đã thiết lập nhân rộng giữa Nhà cung cấp và Người tiêu dùng theo Phần 1.6, “Nhân rộng” [tr. 123] và đã định cấu hình TLS để xác thực trên Nhà cung cấp bằng cách làm theo Phần 1.8, “TLS” [tr. 129].
Như đã nêu trước đây, mục tiêu (đối với chúng tôi) với việc nhân rộng là tính khả dụng cao cho dịch vụ LDAP. Vì chúng tôi có TLS để xác thực trên Nhà cung cấp, chúng tôi sẽ yêu cầu điều tương tự đối với Người tiêu dùng. Tuy nhiên, ngoài điều này, chúng tôi muốn mã hóa lưu lượng sao chép. Những gì còn phải làm là tạo một khóa và chứng chỉ cho Người tiêu dùng và sau đó định cấu hình cho phù hợp. Chúng tôi sẽ tạo khóa / chứng chỉ trên Nhà cung cấp, để tránh phải tạo chứng chỉ CA khác, rồi chuyển tài liệu cần thiết cho Người tiêu dùng.
1. Trên Nhà cung cấp,
Tạo một thư mục lưu giữ (sẽ được sử dụng để chuyển cuối cùng) và sau đó là khóa riêng của Người tiêu dùng:
mkdir ldap02-ssl cd ldap02-ssl
Sudo certtool --generate-privkey \
--bit 1024 \
--outfile ldap02_slapd_key.pem
Tạo một tệp thông tin, ldap02.info, đối với máy chủ Người tiêu dùng, điều chỉnh các giá trị của nó cho phù hợp:
tổ chức = Công ty mẫu cn = ldap02.example.com
tls_www_serverption_key Sign_key expiration_days = 3650
Tạo chứng chỉ của Người tiêu dùng:
Sudo certtool --generate-cert \
--load-privkey ldap02_slapd_key.pem \
--load-ca-cert /etc/ssl/certs/cacert.pem \
--load-ca-privkey /etc/ssl/private/cakey.pem \
--template ldap02.info \
--outfile ldap02_slapd_cert.pem
Nhận một bản sao của chứng chỉ CA:
cp /etc/ssl/certs/cacert.pem.
Đã được thực hiện. Bây giờ chuyển ldap02-ssl thư mục cho Người tiêu dùng. Ở đây chúng tôi sử dụng scp (điều chỉnh cho phù hợp):
đĩa CD ..
scp -r ldap02-ssl user @ user:
2. Về phía người tiêu dùng,
Định cấu hình xác thực TLS:
Sudo apt cài đặt ssl-cert
sudo gpasswd -a openldap ssl-cert
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 khởi động lại tátd.service
Tạo tệp /etc/ssl/certinfo.ldif với các nội dung sau (điều chỉnh cho phù hợp):
dn: cn = config
thêm: olcTLSCACertificateFile olcTLSCACertificateFile: /etc/ssl/certs/cacert.pem
-
thêm: olcTLSCertificateFile
olcTLSCertificateFile: /etc/ssl/certs/ldap02_slapd_cert.pem
-
thêm: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/ssl/private/ldap02_slapd_key.pem
Định cấu hình cơ sở dữ liệu tátd-config:
sudo ldapmodify -Y NGOÀI H ldapi: /// -f certinfo.ldif
Thiết lập / etc / default / tátd như trên Nhà cung cấp (SLAPD_SERVICES).
3. Về phía người tiêu dùng,
Định cấu hình TLS để nhân rộng phía Người tiêu dùng. Sửa đổi hiện tại olcSyncrepl thuộc tính bằng cách bổ sung một số tùy chọn TLS. Khi làm như vậy, lần đầu tiên chúng ta sẽ thấy cách thay đổi (các) giá trị của một thuộc tính.
Tạo tệp Consumer_sync_tls.ldif với các nội dung sau:
dn: olcDatabase = {1} mdb, cn = config Replace: 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 = nhu cầu
Các tùy chọn bổ sung tương ứng chỉ định rằng người tiêu dùng phải sử dụng StartTLS và chứng chỉ CA là bắt buộc để xác minh danh tính của Nhà cung cấp. Cũng lưu ý cú pháp LDIF để thay đổi các giá trị của thuộc tính ('thay thế').
Thực hiện những thay đổi này:
sudo ldapmodify -Y BÊN NGOÀI -H ldapi: /// -f Consumer_sync_tls.ldif
Và khởi động lại tát:
sudo systemctl khởi động lại tátd.service
4. Trên Nhà cung cấp,
Kiểm tra xem phiên TLS đã được thiết lập hay chưa. Trong / var / log / syslog, với điều kiện bạn đã thiết lập ghi nhật ký cấp 'conns', bạn sẽ thấy các thông báo tương tự như:
Tátd [3620]: conn = 1047 fd = 20 CHẤP NHẬN từ IP = 10.153.107.229: 57922 (IP = 0.0.0.0: 389) Tátdd [3620]: conn = 1047 op = 0 EXT oid = 1.3.6.1.4.1.1466.20037
tát [3620]: conn = 1047 op = 0 SAO
tátd [3620]: conn = 1047 op = 0 RESULT oid = err = 0 text =
tátd [3620]: conn = 1047 fd = 20 TLS thành lập tls_ssf = 128 ssf = 128 tátd [3620]: conn = 1047 op = 1 BIND dn = "cn = admin, dc = example, dc = com" method = 128
tátd [3620]: conn = 1047 op = 1 BIND dn = "cn = admin, dc = example, dc = com" mech = SIMPLE ssf = 0 Tátd [3620]: conn = 1047 op = 1 thẻ RESULT = 97 err = 0 văn bản
<Trước | Nội dung | Tiếp theo>