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

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

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

    DANCE WITH JAVA

    開發(fā)出高質(zhì)量的系統(tǒng)

    常用鏈接

    統(tǒng)計

    積分與排名

    好友之家

    最新評論

    openssl 進階(自動化)

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

     

    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 閱讀(869) 評論(0)  編輯  收藏 所屬分類: 片段

    主站蜘蛛池模板: 久久经典免费视频| 中文字幕亚洲精品无码| 亚洲男人的天堂网站| 欧洲一级毛片免费| 亚洲成AV人片一区二区密柚| 色多多免费视频观看区一区| 免费羞羞视频网站| 最新国产精品亚洲| 精品国产亚洲男女在线线电影| 久久人午夜亚洲精品无码区| 大陆一级毛片免费视频观看| 亚洲精品无播放器在线播放| 女性自慰aⅴ片高清免费| 国产免费A∨在线播放| 在线A亚洲老鸭窝天堂| 中文成人久久久久影院免费观看 | 色噜噜亚洲男人的天堂| 成人免费大片免费观看网站| 亚洲av专区无码观看精品天堂| 日韩精品无码区免费专区| 亚洲熟伦熟女专区hd高清| 暖暖免费高清日本中文| 亚洲免费网站观看视频| 亚洲AV无码一区二区乱子伦| 91香焦国产线观看看免费| 亚洲综合亚洲国产尤物| 四虎国产精品免费久久| 久久亚洲精品无码网站| 久久精品国产亚洲AV无码娇色 | 国产香蕉九九久久精品免费| 毛片基地看看成人免费| 亚洲乱色伦图片区小说 | 全黄A免费一级毛片| 在线观看亚洲精品国产| 麻豆国产VA免费精品高清在线| 日韩精品极品视频在线观看免费| 亚洲AV无码乱码麻豆精品国产| 亚洲乳大丰满中文字幕| 欧美在线看片A免费观看| 久久精品视频免费播放| 91在线亚洲综合在线|