<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)  編輯  收藏 所屬分類: 片段

    主站蜘蛛池模板: www.av在线免费观看| 国产亚洲精品第一综合| 国产成人精品免费视频大全| 成人免费视频试看120秒| 成人爽a毛片免费| 国产亚洲精品国看不卡| 一本一道dvd在线观看免费视频 | 黄色网址大全免费| 四虎永久免费影院| 理论片在线观看免费| 久久久久久亚洲精品不卡| 成人妇女免费播放久久久| 亚洲人成网亚洲欧洲无码久久 | 国产精品自拍亚洲| 亚洲福利在线播放| CAOPORN国产精品免费视频| 亚洲乱码国产乱码精品精| 国产免费拔擦拔擦8X高清在线人| 久久精品国产亚洲| 免费福利资源站在线视频| 亚洲国产成人久久综合野外| h片在线播放免费高清| 亚洲第一极品精品无码久久| 免费无码VA一区二区三区| 国产精品亚洲四区在线观看 | 亚洲av永久中文无码精品综合| 又大又粗又爽a级毛片免费看| 一级一级一级毛片免费毛片| 久久久久久亚洲精品| 中文字幕无码成人免费视频| 免费在线观看亚洲| 亚洲va久久久噜噜噜久久狠狠| 国产人成免费视频网站| 小说区亚洲自拍另类| 亚洲热线99精品视频| 成人免费福利视频| g0g0人体全免费高清大胆视频| 亚洲五月六月丁香激情| 国产成人精品免费视频大全五级| 中文字幕在线视频免费观看 | 亚洲乱码中文字幕小综合|