国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Docker 服務 TLS 證書全自動生成之改進版

Miyang / 1958人閱讀

大佬整理的Shell個人感覺用著有問題,改進了一下。
客戶端用的key保存到~/.docker/tls-client-certs.tar.gz
希望大家用的開心

#!/bin/bash
# 
# Created by L.STONE 
# Mod By Ryan.L 
# -------------------------------------------------------------
# 自動創建 Docker TLS 證書
# -------------------------------------------------------------

# 以下是配置信息
# Config start
IP="8.8.8.8"
PASSWORD="123456"
COUNTRY="CN"
STATE="Beijing"
CITY=""
ORGANIZATION="iPlayLoli"
ORGANIZATIONAL_UNIT="Dev"
COMMON_NAME="$IP"
EMAIL="github-benzBrake@woai.ru"
# Config end
# 工作目錄
mkdir -p /etc/docker ~/.docker
cd ~/.docker
# 停止 docker
service docker stop
# 生成 CA 密鑰
if [[ ! -f ca-key.pem ]]; then
    echo " - 生成 CA 密鑰"
    openssl genrsa -aes256 -passout "pass:$PASSWORD" -out "ca-key.pem" 4096
fi
# 生成 CA
if [[ ! -f ca.pem ]]; then
    echo " - 生成 CA"
    openssl req -new -x509 -days 365 -key "ca-key.pem" -sha256 -out "ca.pem" -passin "pass:$PASSWORD" -subj "/C=$COUNTRY/ST=$STATE/L=$CITY/O=$ORGANIZATION/OU=$ORGANIZATIONAL_UNIT/CN=$COMMON_NAME/emailAddress=$EMAIL"
fi
# 生成服務器密鑰 & 服務器證書
if [[ ! -f server-key.pem ]]; then
    echo " - 生成服務器密鑰"
    openssl genrsa -out "server-key.pem" 4096
fi
if [[ ! -f server.csr ]]; then
     openssl req -subj "/CN=$COMMON_NAME" -sha256 -new -key "server-key.pem" -out server.csr
fi
if [[ ! -f server-cert.pem ]]; then
    echo " - 生成服務器證書"
    echo "subjectAltName = IP:$IP,IP:127.0.0.1" >> extfile.cnf
    echo "extendedKeyUsage = serverAuth" >> extfile.cnf
    openssl x509 -req -days 365 -sha256 -in server.csr -passin "pass:$PASSWORD" -CA "ca.pem" -CAkey "ca-key.pem" -CAcreateserial -out "server-cert.pem" -extfile extfile.cnf
fi
rm -f extfile.cnf
# 生成客戶端證書
if [[ ! -f key.pem ]]; then
    openssl genrsa -out "key.pem" 4096
fi
if [[ ! -f cert.pem ]]; then
    openssl req -subj "/CN=client" -new -key "key.pem" -out client.csr
    echo extendedKeyUsage = clientAuth >> extfile.cnf
    openssl x509 -req -days 365 -sha256 -in client.csr -passin "pass:$PASSWORD" -CA "ca.pem" -CAkey "ca-key.pem" -CAcreateserial -out "cert.pem" -extfile extfile.cnf
fi

chmod -v 0400 "ca-key.pem" "key.pem" "server-key.pem"
chmod -v 0444 "ca.pem" "server-cert.pem" "cert.pem"

# 打包客戶端證書
echo " - 打包客戶端證書為 tls-client-certs.tar.gz"
mkdir -p "tls-client-certs"
cp -f "ca.pem" "cert.pem" "key.pem" "tls-client-certs/"
cd "tls-client-certs"
tar zcf "tls-client-certs.tar.gz" *
mv "tls-client-certs.tar.gz" ../
cd ..
rm -rf "tls-client-certs"

# 拷貝服務端證書
mkdir -p /etc/docker/certs.d
cp -f "ca.pem" "server-cert.pem" "server-key.pem" /etc/docker/certs.d/
echo " - 修改 /etc/docker/daemon.json 文件"
if [[ -f /etc/docker/daemon.json ]]; then
    grep "/etc/docker/certs.d/server-key.pem" /etc/docker/daemon.json > /dev/null
    if [[ ! $? -eq 0 ]]; then
        cat >/etc/docker/daemon.json</etc/docker/daemon.json</etc/systemd/system/docker.service.d/override.conf<           
               
                                           
                       
                 

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/27735.html

相關文章

  • Docker Registry Server 搭建,配置免費HTTPS證書,及擁有權限認證、TLS

    摘要:上一篇文章搭建了一個具有基礎功能的私有倉庫,這次來搭建一個擁有權限認證的私有倉庫。移動證書到目錄。身份驗證為用戶創建一個帶有一個條目的密碼文件,密碼為創建倉庫啟動注冊表,指示它使用證書。注冊表在端口默認的端口上運行。 上一篇文章搭建了一個具有基礎功能的私有倉庫,這次來搭建一個擁有權限認證、TLS 的私有倉庫。 環境準備 系統:Ubuntu 17.04 x64 IP:198.13.48...

    liuchengxu 評論0 收藏0
  • HTTPS 配置教程

    摘要:如果存在文件請優先修改此文件,具體原因請百度配置重啟到此為止,我們就已經成功的完成了的配置。 本文首發地址:https://liluyang.me 本文將以本站 http://liluyang.me 升級到 https://liluyang.me 的過程來分享一下 https 的原理,http 和 https 的區別,以及如何將網站從 http 升級到 https。 引言 為什么要用...

    Nosee 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<