<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    DANCE WITH JAVA

    開發出高質量的系統

    常用鏈接

    統計

    積分與排名

    好友之家

    最新評論

    openssl 進階(自動化)

    在用 openssl 的過程中會有很厭煩的一件事情,就使須要不停的填入各種資料,是否能讓這些自動填寫呢,答案是肯定的。下邊幾個 shell 配合使用,就能完成任務, shell 是我正在使用的,沒有問題,不過可能有些東西是多余的,好在內容不多,很容易看明白:

     

    shell one:

    #!/bin/bash

    echo -n  "input username:"

    read USERNAME

    #if [ -f bak/$USERNAME.pem ] || grep $USERNAME demoCA/newcerts -R 1>/dev/null 2>/dev/null ;then

    #  echo "$USERNAME's cert has already been made,revoke(openssl ca -revoke $USERNAME.pem) and delete it first"

    #  exit 1

    #fi

    echo -n "input password(length> 4):"

    read PASSWORD

    echo -n "input ca's password:"

    read CAPASS

    if [ -d bak ];then echo "bak dir exist"

    else mkdir bak

    fi

    mv -if /usr/share/ssl/misc/*.pem bak

    mv -if /usr/share/ssl/misc/*.req bak

    mv -if /usr/share/ssl/misc/*.key bak

    mv -if /usr/share/ssl/misc/*.p12 bak

    /usr/share/ssl/misc/auto $USERNAME $PASSWORD $CAPASS

     

    # make user dir

    if [ -d /opt/certs/$USERNAME ];then

      echo "ok"

    else

      mkdir -p /opt/certs/$USERNAME

    fi

     

    rm -rf /opt/certs/$USERNAME/* -rf

     

    #cp $USERNAME.key $USERNAME.p12 $USERNAME.pem /edi/pss/cert/now/server/ -rf

    cp $USERNAME.p12 /opt/certs/$USERNAME -rf

    if [ -f SYSTEM01.p7c ]; then

                  cp SYSTEM01.p7c /opt/certs/$USERNAME -rf

    fi

     

    if [ -f bak/SYSTEM01.p7c ]; then

                  cp bak/SYSTEM01.p7c /opt/certs/$USERNAME -rf

    fi

    ./makep7c $USERNAME

     

     

     

    shell two:

    #!/usr/bin/expect

    set user [lindex $argv 0]

    set pass [lindex $argv 1]

    set capass [lindex $argv 2]

    #spawn ./CA -newreq

    spawn openssl req -new -keyout $user.key -out $user.req

    expect "Enter PEM pass phrase:"

    send "$pass\n"

    expect "Verifying - Enter PEM pass phrase:"

    send "$pass\n"

    expect "]:"

    send "JP\n"

    expect "]:"

    send "\n"

    expect "]:"

    send "\n"

    expect "]:"

    send "WAVE\n"

    expect "]:"

    send "WAVE Center\n"

    expect "]:"

    send "$user\n"

    expect "]:"

    send "$user@linux3.niis.com.cn\n"

    expect "]:"

    send "$pass\n"

    expect "]:"

    send "$pass\n"

    #exit

     

    #spawn ./CA -sign

    expect eof

    spawn openssl ca -policy policy_anything -out $user.pem -infiles $user.req

    expect "cakey.pem:"

    send "$capass\n"

    expect "y/n]:"

    send "y\n"

    expect "/n]"

    send "y\n"

       

    #p12

    expect eof

    spawn openssl pkcs12 -export -in $user.pem -inkey $user.key -out $user.p12 -passin pass:$pass -passout pass:$pass -certfile demoCA/cacert.pem

    expect eof

    exit

     

    shell three:

    #!/bin/bash

    if test -z $1 ;then

      echo "Please input username as arg0"

      exit 1

    fi

    USER=$1

    if [ -f ./$USER.pem ]; then

      echo "ok,$USER's pem exist"

    else

      echo "$USER's pem file not exit!!!"

      exit 0

    fi

    cat $USER.pem demoCA/cacert.pem >tmp$USER.pem

    openssl crl2pkcs7 -certfile  tmp$USER.pem -nocrl -out $USER.p7c -outform DER

    if [ -f $USER.p7c ]; then

      echo "OK,$USER.p7c made"

    else

      echo "error occur"

      exit 1

    fi

    #rm tmp$USER.pem -rf

    posted on 2006-10-16 11:27 dreamstone 閱讀(856) 評論(0)  編輯  收藏 所屬分類: 片段

    主站蜘蛛池模板: 亚洲AV成人无码网天堂| 亚洲香蕉久久一区二区| 一级一片免费视频播放| 亚洲毛片不卡av在线播放一区| 精品免费AV一区二区三区| 拔擦拔擦8x华人免费久久| 国产亚洲精品成人久久网站| 国产三级电影免费观看| 国产成人亚洲精品无码AV大片| 国产一级淫片a免费播放口之 | 人人玩人人添人人澡免费| 久久精品国产亚洲香蕉| 99久9在线|免费| 亚洲视频精品在线观看| 永久免费毛片在线播放| 亚洲区日韩精品中文字幕| 国产免费一区二区三区VR| 丝袜足液精子免费视频| 麻豆亚洲AV永久无码精品久久| 久久久久久久免费视频| 久久亚洲精品成人无码| 中文字幕在亚洲第一在线| 亚欧日韩毛片在线看免费网站| 亚洲人成网站在线观看播放动漫| 成人免费a级毛片| 一级中文字幕免费乱码专区| 久久亚洲国产午夜精品理论片 | 成年女人色毛片免费看| 男人免费视频一区二区在线观看| 亚洲日产无码中文字幕| 18禁网站免费无遮挡无码中文| 久久精品国产亚洲av天美18 | 亚洲美女一区二区三区| 成人永久免费高清| 中文字幕永久免费| 国产人成亚洲第一网站在线播放| 亚洲国产日韩成人综合天堂| 永久黄色免费网站| 免费看一级一级人妻片| 亚洲视频中文字幕在线| 亚洲国产综合精品一区在线播放|