Hướng dẫn php check ssl certificate expiration date - php kiểm tra ngày hết hạn chứng chỉ ssl

Điều này làm việc cho tôi:

$url = "//www.google.com";
$orignal_parse = parse_url[$url, PHP_URL_HOST];
$get = stream_context_create[array["ssl" => array["capture_peer_cert" => TRUE]]];
$read = stream_socket_client["ssl://".$orignal_parse.":443", $errno, $errstr, 
30, STREAM_CLIENT_CONNECT, $get];
$cert = stream_context_get_params[$read];
$certinfo = openssl_x509_parse[$cert['options']['ssl']['peer_certificate']];

echo '
';
print_r[$certinfo];
echo '
';

SSL tốt hết thời gian trong Fild này

[validTo_time_t] => 1523164135 // expire time.

Chuyển đổi ngày & giờ

$valid_from = date[DATE_RFC2822,$certinfo['validFrom_time_t']];
$valid_to = date[DATE_RFC2822,$certinfo['validTo_time_t']];
echo "Valid From: ".$valid_from."
"; echo "Valid To:".$valid_to."
";

Result:

Có giá trị từ: Thứ Hai, 09 tháng 10 năm 2017 07:00:00 +0700 hợp lệ đến: Thứ tư, ngày 10 tháng 10 năm 2018 06:59:59 +0700

sslcheck

Một tập lệnh PHP đơn giản để kiểm tra hết hạn của chứng chỉ SSL.

Yêu cầu

  • PHP [bao gồm hỗ trợ CLI].
  • OpenSSL

Kịch bản này chỉ được thử nghiệm trên Ubuntu 16.04+ bằng Php7.

Cách sử dụng

  1. Clone repo này hoặc đơn giản là tải xuống tệp sslcheck.
  2. Đảm bảo tệp sslcheck có thể thực thi [____10].
  3. Thực thi tập lệnh
    [validTo_time_t] => 1523164135 // expire time.
    
    1.

Nếu bạn không thể thực thi tập lệnh trực tiếp, bạn có thể cần phải biểu hiện tập lệnh thông qua PHP [

[validTo_time_t] => 1523164135 // expire time.
2];

Bạn có thể kiểm tra nhiều miền bằng cách liệt kê tất cả chúng khi chạy tập lệnh:

sslcheck www.google.com www.example.com www.github.com

Nếu một miền được tìm thấy có nhiều bản ghi A hoặc AAAA thì mỗi tên sẽ được kiểm tra riêng lẻ và IP sẽ được hiển thị cùng với miền trong đầu ra.

Sử dụng qua email

Tệp

[validTo_time_t] => 1523164135 // expire time.
3 là một tập lệnh đơn giản cho thấy cách này có thể được sử dụng qua email. Chỉ cần đọc các nhận xét ở đầu tập lệnh và thay đổi các biến cấu hình để thiết lập nó. Nếu lệnh
[validTo_time_t] => 1523164135 // expire time.
4 không có sẵn trên hệ thống của bạn, bạn có thể cần cài đặt nó [Ubuntu:
[validTo_time_t] => 1523164135 // expire time.
5]. Một ý tưởng tốt sẽ là thiết lập điều này như một công việc cron để gửi một báo cáo hàng tuần.

Ôi trời là công cụ giám sát tất cả trong một cho toàn bộ trang web của bạn. Chúng tôi theo dõi thời gian hoạt động, chứng chỉ SSL, liên kết bị hỏng, các tác vụ theo lịch trình và nhiều hơn nữa. Bạn sẽ nhận được một thông báo cho chúng tôi khi có điều gì đó không ổn. Tất cả những gì kết hợp với một API thân thiện với nhà phát triển và tài liệu kick-ass. O, và bạn cũng sẽ có thể tạo một trang trạng thái công khai trong một phút. Bắt đầu theo dõi bằng cách sử dụng bản dùng thử miễn phí của chúng tôi ngay bây giờ.

Liên kết - ngày 28 tháng 7 năm 2016

Với vani PHP, có thể kiểm tra xem chứng chỉ SSL của một trang web nhất định có hợp lệ hay không. Nhưng thật là điên rồ khi làm điều đó. Chúng ta hãy xem mã cần thiết:

// Step 1: downloading the certificate from the site
$streamContext = stream_context_create[[
    'ssl' => [
        'capture_peer_cert' => true,
    ],
]];

$client = stream_socket_client[
    "ssl://spatie.be:443",
    $errorNumber,
    $errorDescription,
    $timeout,
    STREAM_CLIENT_CONNECT,
    $streamContext];

$response = stream_context_get_params[$client];

$certificateProperties = openssl_x509_parse[$response['options']['ssl']['peer_certificate']];

// Step 2: parsing the certificate

/*
* I'm not even going to type out the further code needed.
*
* `$certificateProperties` has two keys `validFrom_time_t` and `validTo_time_t`. 
* Those keys contain the UTC representation of the date.
* You will need to check if the current date is between those dates.
*/ 

Gì. Các. Thật sự. F. Hãy sửa cái này!

Chúng tôi đã phát hành một gói mới có tên Spatie/SSL chứng nhận giúp kiểm tra chứng chỉ SSL của một trang web dễ cười. Hãy xem mã:

$certificate = SslCertificate::createForHostName['spatie.be'];
$certificate->isValid[]; // returns true if the certificate is currently valid

Boom, thực hiện.

Gói có thêm một vài phương pháp làm cho việc làm việc với chứng chỉ SSL trở nên dễ dàng:

$certificate->getIssuer[]; // returns "Let's Encrypt Authority X3"

$certificate->getDomain[]; // returns "spatie.be"

//A certificate can cover multiple [sub]domains. Here's how to get them.
$certificate->getAdditionalDomains[]; // returns ["spatie.be", "www.spatie.be]

$this->certificate->validFromDate[]; // returns an instance of Carbon

$certificate->getExpirationDate[]; // returns an instance of Carbon

Bạn cũng có thể sử dụng

[validTo_time_t] => 1523164135 // expire time.
6 để xác định xem một miền nhất định có được bảo vệ bởi chứng chỉ hay không. Tất nhiên, nó sẽ tiếp tục kiểm tra xem dữ liệu hiện tại có nằm trong khoảng từ
[validTo_time_t] => 1523164135 // expire time.
7 đến
[validTo_time_t] => 1523164135 // expire time.
8 hay không.

$this->certificate->isValid['spatie.be']; // returns true
$this->certificate->isValid['laravel.com']; // returns false

Mã nguồn của gói có sẵn trên GitHub. Công ty của tôi đã thực hiện nhiều gói Agnostic, Laravel và JavaScript hơn của Framework Framework trong quá khứ. Hãy xem trang nguồn mở tại trang web của chúng tôi để xem liệu chúng tôi có làm bất cứ điều gì có thể sử dụng cho bạn không.

Theo dõi tôi trên Twitter. Tôi thường xuyên tweet ra các mẹo lập trình và những gì bản thân tôi đã học được trong các dự án đang diễn ra.

Mỗi tháng tôi gửi một bản tin chứa rất nhiều thứ thú vị cho nhà phát triển PHP hiện đại.

Mong đợi các mẹo & thủ thuật nhanh, hướng dẫn thú vị, ý kiến ​​và gói. Bởi vì tôi làm việc với Laravel mỗi ngày, có một sự nhấn mạnh vào khuôn khổ đó.

Hãy yên tâm rằng tôi sẽ chỉ sử dụng địa chỉ email của bạn để gửi cho bạn bản tin và sẽ không sử dụng nó cho bất kỳ mục đích nào khác.

Làm cách nào để kiểm tra ngày hết hạn chứng chỉ SSL?

Đây là cách kiểm tra ngày hết hạn của chứng chỉ SSL trên Google Chrome ...
Nhấp vào ổ khóa. Bắt đầu bằng cách nhấp vào biểu tượng ổ khóa trong thanh địa chỉ cho bất kỳ trang web nào bạn đang truy cập ..
Nhấp vào hợp lệ. Trong hộp pop-up, nhấp vào trên các trò chơi hợp lệ của nhóm
Kiểm tra dữ liệu hết hạn ..

Làm thế nào kiểm tra ngày hết hạn PHP?

Làm thế nào tôi có thể so sánh ngày hôm nay với một ngày khác trong PHP ?..
$ hôm nay = ngày ["y-m-d"] ;.
$ hết hạn = $ hàng-> hết hạn;// từ cơ sở dữ liệu ..
$ TODAY_TIME = Strtotime [$ ngay hôm nay] ;.
$ expire_time = strtotime [$ expire] ;.
if [$ expire_time /dev/null | openssl x509 -noout -dates .

Làm thế nào tôi có thể kiểm tra xem chứng chỉ của tôi có hợp lệ trực tuyến không?

Bạn có thể xác minh chứng chỉ SSL trên máy chủ web của mình để đảm bảo nó được cài đặt chính xác, hợp lệ, đáng tin cậy và không đưa ra bất kỳ lỗi nào cho bất kỳ người dùng nào của bạn.Để sử dụng trình kiểm tra SSL, chỉ cần nhập tên máy chủ công khai của máy chủ [tên máy chủ nội bộ không được hỗ trợ] vào hộp bên dưới và nhấp vào nút Kiểm tra SSL.

Bài Viết Liên Quan

Chủ Đề