একটি ইউসিসি / সান এসএসএল শংসাপত্রে ডোমেন তালিকাভুক্ত করা


15

কোনও সান / ইউসিসি এসএসএল শংসাপত্রে (আদর্শভাবে লিনাক্স / ওএস এক্স-তে কমান্ড লাইন ব্যবহার করে) সমস্ত ডোমেন তালিকাভুক্ত করার উপায় আছে কি?

স্পষ্টতই ডেটা উত্তোলনের কিছু উপায় থাকতে হবে, যেহেতু ব্রাউজারগুলি এটি করতে পারে। দুর্ভাগ্যক্রমে, আমি তালিকাটি দেখতে পাচ্ছি তবে এটি কেটে পেস্ট করতে পারছি না।

উত্তর:


25

openssl x509 -text < foo.crt কৌতুক করা উচিত।


3
উত্তরসূরীদের জন্য, এটি আমি সম্পূর্ণ কমান্ডটি ব্যবহার করেছি, যেহেতু আমি এটি অন্য সার্ভারের জন্য করছিলাম:openssl s_client -showcerts -connect www.example.org:443 | openssl x509 -text
জর্ডান রিয়েটার

3
ডোমেনগুলির একটি পরিষ্কার স্থান সীমানাঙ্কিত তালিকা পেতে আপনি এটি গ্রেপ এর মাধ্যমে পাস করতে পারেন এবং সেডের মতো করে দিতে পারেনopenssl x509 -text < $CRT | grep 'DNS:' | sed 's/\s*DNS:\([a-z0-9.\-]*\)[,\s]\?/\1 /g'
জেফ্রি

দয়া করে নীচে স্ক্রোল করুন: প্যান্টিক্জেডের উত্তর আরও ভাল ;-)
লুকাফেরারিও

10

আপনি এই কমান্ডের সাথে ডোমেনগুলি তালিকাভুক্ত করতে পারেন (লিনাক্সে পরীক্ষিত):

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

এটি এক গৃহীত উত্তরের চেয়ে ভাল আউটপুট দেয়।
ওয়াটো

হ্যাঁ, পরিবর্তে এটি গ্রহণযোগ্য উত্তর হওয়া উচিত।
কাল

1

আপনি যদি স্যানগুলি দেখতে চান grep DNS:তবে এটি হ'ল সুস্পষ্ট সমাধান।

আপনি যদি আরও প্রক্রিয়া করার জন্য একটি ক্লিনার তালিকা পেতে চান, আপনি কেবল নামগুলি বের করতে এই পার্ল রেজেক্সটি ব্যবহার করতে পারেন: @names=/\sDNS:([^\s,]+)/g

উদাহরণ স্বরূপ:

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);'

যা এই আউটপুট হবে:

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

সুতরাং আপনি যে পাইপ পারে while read name; do echo "processing $name ..."; done

অথবা এক লাইনে কমা-বিচ্ছিন্ন তালিকার জন্য, এর join("\n",সাথে প্রতিস্থাপন করুনjoin(",",

( -0777পার্লের স্যুইচটি এটিকে লাইনের মাধ্যমে লাইনের পরিবর্তে একবারে পুরো ইনপুটটি পড়তে দেয়)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.