Tôi cần tập lệnh của mình để gửi email cho quản trị viên nếu có vấn đề và công ty chỉ sử dụng Gmail. Theo một vài hướng dẫn bài viết, tôi đã có thể thiết lập mailx bằng tệp .mailrc. Đầu tiên là lỗi của nss-config-dir Tôi đã giải quyết điều đó bằng cách sao chép một số tệp .db từ thư mục firefox. đến ./certs và nhắm đến nó trong mailrc. Một bức thư đã được gửi đi.
Tuy nhiên, lỗi ở trên đã đưa ra. Bằng một phép màu nào đó, đã có chứng chỉ Google trong .db. Nó xuất hiện với lệnh này:
~]$ certutil -L -d certs
Certificate Nickname Trust Attributes
SSL,S/MIME,JAR/XPI
GeoTrust SSL CA ,,
VeriSign Class 3 Secure Server CA - G3 ,,
Microsoft Internet Authority ,,
VeriSign Class 3 Extended Validation SSL CA ,,
Akamai Subordinate CA 3 ,,
MSIT Machine Auth CA 2 ,,
Google Internet Authority ,,
Nhiều khả năng, nó có thể bị bỏ qua, vì dù sao thư cũng hoạt động. Cuối cùng, sau khi nhổ một ít tóc và nhiều googles, tôi đã tìm ra cách để thoát khỏi sự khó chịu.
Đầu tiên, xuất chứng chỉ hiện có sang tệp ASSCII:
~]$ certutil -L -n 'Google Internet Authority' -d certs -a > google.cert.asc
Bây giờ nhập lại tệp đó và đánh dấu là tin cậy cho chứng chỉ SSL, ala:
~]$ certutil -A -t "C,," -n 'Google Internet Authority' -d certs -i google.cert.asc
Sau này, danh sách cho thấy nó đáng tin cậy:
~]$ certutil -L -d certs
Certificate Nickname Trust Attributes
SSL,S/MIME,JAR/XPI
...
Google Internet Authority C,,
Và mailx gửi đi mà không gặp trở ngại.
~]$ /bin/mailx -A gmail -s "Whadda ya no" somebody@acompany.com
ho ho ho
EOT
~]$
Tôi hy vọng nó hữu ích cho ai đó muốn được thực hiện với lỗi.
Ngoài ra, tôi tò mò về điều gì đó.
Làm thế nào tôi có thể có được chứng chỉ này, nếu nó không có trong cơ sở dữ liệu mozilla? Có ví dụ, một cái gì đó như thế này?
~]$ certutil -A -t "C,," \
-n 'gmail.com' \
-d certs \
-i 'http://google.com/cert/this...'
openssl s_client -showcerts -connect smtp.gmail.com:465 </dev/null
để xem tất cả