Mendaftarkan domain pada Sertifikat UCC / SAN SSL


15

Apakah ada cara untuk mendaftarkan semua domain pada SAN / UCC SSL Certificate (idealnya menggunakan command line di linux / os x)?

Jelas harus ada beberapa cara untuk mengekstrak data, karena browser dapat melakukannya. Sayangnya, saya dapat melihat daftar tetapi tidak dapat memotong dan menempelkannya.

Jawaban:


25

openssl x509 -text < foo.crt harus melakukan trik.


3
Untuk anak cucu, ini adalah perintah penuh yang saya gunakan, karena saya melakukannya untuk server lain:openssl s_client -showcerts -connect www.example.org:443 | openssl x509 -text
Jordan Reiter

3
Untuk mendapatkan daftar domain yang dibatasi ruang kosong Anda dapat melewati itu grep dan sed seperti ituopenssl x509 -text < $CRT | grep 'DNS:' | sed 's/\s*DNS:\([a-z0-9.\-]*\)[,\s]\?/\1 /g'
Geoffrey

Silakan gulir ke bawah: jawaban panticz.de lebih baik ;-)
lucaferrario

9

Anda dapat membuat daftar domain dengan perintah ini (diuji di linux):

cat cert.pem | openssl x509 -text | grep DNS

Yang ini memberikan hasil yang lebih baik daripada jawaban yang diterima.
VaTo

Yap, ini seharusnya menjadi jawaban yang diterima.
Kal

1

Jika Anda hanya ingin melihat SAN, grep DNS:adalah solusi yang jelas.

Jika Anda ingin memiliki daftar pembersih untuk diproses lebih lanjut, Anda dapat menggunakan reg reg ini untuk mengekstrak hanya nama-nama: @names=/\sDNS:([^\s,]+)/g

Sebagai contoh:

true | openssl s_client -connect example.com:443 2>/dev/null \
| openssl x509 -noout -text \
| perl -l -0777 -ne '@names=/\bDNS:([^\s,]+)/g; print join("\n", sort @names);'

Yang akan menghasilkan ini:

example.com
example.edu
example.net
example.org
www.example.com
www.example.edu
www.example.net
www.example.org

Jadi Anda bisa menyalurkannya ke while read name; do echo "processing $name ..."; donedll.

Atau untuk daftar yang dipisahkan koma pada satu baris, ganti join("\n", denganjoin(",",

( -0777Switch untuk perl membuatnya membaca seluruh input sekaligus bukan baris demi baris)

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.