opensslのreqはCSRを作るコマンドですが、-newkeyをつけると秘密鍵の生成、-x509をつけるとCSRを作った後にそれで署名した証明書を作ってくれるので、コマンド1発で作れます また、-configで作成時のオプションなどをファイルで管理できます。以下の例はファイル名に-を指定することで標準入力から読ませていますが、ファイルにしてファイルパスを指定することもできます。Subject Alternative Name(SAN)に対応する場合はファイルで。一応、SANにはWildcardもzone apexなドメインも指定できます。 -days 3650は署名する際に設定される期間です。自己署名なので適当に長くしてください。 configの読み方/書き方は次のドキュメントが役に立つと思います。 https://www.openssl.org/docs/man1.0.2/man1/