Thứ Ba, 14 tháng 2, 2023

Tạo Client Certificate linux

Posted by Admin on tháng 2 14, 2023 | No comments

 1. Tạo khóa riêng cho chứng chỉ CA

openssl genrsa 2048 > ca-key.pem

2. Tạo chứng chỉ CA bằng khóa riêng

openssl req -new -x509 -nodes -days 1000 -key ca-key.pem > ca-cert.pem

3. Tạo chứng chỉ ứng dụng khách

openssl req -newkey rsa:2048 -days 1000 -nodes -keyout client-key1.pem > client-req.pem

4. Tạo chứng chỉ ứng dụng khách được ký bới CA ở  bước 2

openssl x509 -req -in client-req.pem -days 1000 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 > client-cert1.pem 

5. Chuyển pem thành PKCS #12 (dùng cho JAVA,...)

openssl pkcs12 -export -in client-cert1.pem -inkey client-key1.pem -out client-cert1.pfx


Config client Certificate trong nginx

Thêm các dòng sau trong file config:

ssl_client_certificate /home/ubuntu/openssl/CA/client-cert1.pem;

ssl_verify_client optional;

location ~ ^/api/(path check client Certificate 1|path check client Certificate 2) {

    if ($ssl_client_verify != "SUCCESS") { return 403; }

proxy_pass http://localhost:8080;

proxy_pass_request_headers on;

proxy_set_header X_CUSTOM_HEADER $http_x_custom_header;


    proxy_set_header X-Forwarded-Host $host;

    proxy_set_header X-Forwarded-Server $host;

    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}



0 nhận xét:

Đăng nhận xét