BLOGTIMES
2013/04/14

expect で CSR 生成を自動化

  ssl 
このエントリーをはてなブックマークに追加

SSL の CSR の生成方法を良く忘れるので expect を使って自動化してみました。
最終行のイケてない sleep は本来は必要なないはずなんですが、なぜかこれがないと上手く csr が生成されないようです。

csrgen.sh

#!/bin/bash C="JP" # Country Name ST="stname" # State or Province Name L="lname" # Locality Name O="oname" # Organization Name OU="ouname" # Organizational Unit Name CN="hoge.example.com" # Common Name E="hoge@example.com" # Email Address openssl genrsa -out $CN.key 2048 expect - <<EOS spawn openssl req -new -key ${CN}.key -out ${CN}.csr expect "Country Name (2 letter code)*:" send "${C}\n" expect "State or Province Name (full name)*:" send "${ST}\n" expect "Locality Name (eg, city)*:" send "${L}\n" expect "Organization Name (eg, company)*:" send "${O}\n" expect "Organizational Unit Name*:" send "${OU}\n" expect "Common Name*:" send "${CN}\n" expect "Email Address*:" send "${E}\n" expect "A challenge password*:" send "\n" expect "An optional company name*:" send "\n" sleep 0.1 EOS

2013/11/01 追記

こちらを使えばもっとスマートに自動化できます。


    トラックバックについて
    Trackback URL:
    お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
    このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/5738
    Trackbacks
    このエントリにトラックバックはありません
    Comments
    愛のあるツッコミをお気軽にどうぞ。[policy]
    古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
    コメントはありません
    Comments Form

    コメントは承認後の表示となります。
    OpenIDでログインすると、即時に公開されます。

    OpenID を使ってログインすることができます。

    Identity URL: Yahoo! JAPAN IDでログイン