(Xin chào từ năm 2019!) Hiện tại có một certsync
cổng giữ các chứng chỉ OpenSSL đồng bộ với móc khóa hệ thống của bạn, có thể được cài đặt với:
sudo port install certsync
MacPorts nên tạo một mục khởi động launchd để thực hiện đồng bộ hóa định kỳ, nhưng nếu không, sudo port load certsync
sẽ làm điều đó (sử dụng port unload
để vô hiệu hóa nó).
Điều này có thể hữu ích, ví dụ, nếu máy Mac của bạn được cấu hình sẵn bởi chủ nhân của bạn với CA gốc cục bộ hoặc các máy chủ trung gian khác hoặc bạn có CA riêng vì những lý do khác. Trong khi không phải là không thể, nó sẽ là một nỗi đau để
- giải nén chúng từ móc khóa hệ thống của bạn,
- chỉ để đổ chúng vào một nơi khác trên hệ thống tập tin của bạn (mà bạn được đảm bảo sẽ quên trong sáu tháng),
- và sau đó, có khả năng, cũng phải cấu hình mọi tiện ích dòng lệnh khác để trỏ đến chúng (như với
/opt/local/etc/wgetrc
các giải pháp khác ở đây).
Lưu ý rằng certsync
cổng xung đột với curl-ca-bundle
, nằm trong chuỗi phụ thuộc cho nhiều gói MacPort khác, bao gồm curl
. Nếu bạn cố gắng tiếp tục, bạn sẽ nhận được các cảnh báo như thế này:
$ sudo port install certsync
Error: Can't install certsync because conflicting ports are active: curl-ca-bundle
Error: Follow https://guide.macports.org/#project.tickets to report a bug.
Error: Processing of port certsync failed
$ sudo port uninstall curl-ca-bundle
Note: It is not recommended to uninstall/deactivate a port that has dependents as
it breaks the dependents.
The following ports will break:
p11-kit @0.23.16.1_0
neomutt @20180716_0
neomutt @20180716_1
curl @7.65.3_1
subversion @1.12.2_0
Continue? [y/N]:
Các cổng "bị hỏng" có thể vẫn hoạt động bất kể vì certsync
về cơ bản thực hiện công việc curl-ca-bundle
bằng cách ghép tất cả các CA của hệ thống của bạn vào /opt/local/etc/openssl/cert.pem
, nhưng tôi không thể chứng nhận điều đó.
Tuy nhiên, nếu bạn chỉ quan tâm đến việc wget
làm việc và hài lòng với tích hợp sẵn /usr/bin/curl
(được cấu hình để sử dụng kho chứng chỉ toàn hệ thống macOS), thì chỉ cần cài đặt certsync
cổng có thể là giải pháp đơn giản nhất.
Nguồn : phần bình luận Sửa lỗi chứng chỉ SSL CA với OpenSSL từ MacPorts (andatche.com)
certsync
cổng giữ gói chứng chỉ OpenSSL đồng bộ với móc khóa hệ thống của bạn (bằng cách nối tất cả các CA móc khóa của bạn với nhau/opt/local/etc/openssl/cert.pem
). Nếu bạn chỉ quan tâm đếnwget
việc làm, thì đósudo port install certsync; sudo port load certsync
có thể là giải pháp đơn giản nhất. Tôi đã thử nghiệm điều này và nó hoạt động với một CA gốc trung gian được cài đặt vào móc khóa hệ thống bởi chủ nhân của tôi. Xem câu trả lời của tôi dưới đây để biết thêm chi tiết.