প্রশ্ন কিভাবে ব্যবহার করা যাক এর ডিএনএ চ্যালেঞ্জ যাচাই এনক্রিপ্ট?


এর এনক্রিপ্ট আছে ঘোষিত তাদের আছে:

ACME DNS চ্যালেঞ্জের জন্য সমর্থন চালু

আমি কিভাবে করব ./letsencrypt-auto DNS চ্যালেঞ্জ ডোমেইন বৈধকরণ ব্যবহার করে একটি নতুন শংসাপত্র তৈরি?

সম্পাদনা
আমি বলতে চাচ্ছি: আমি কিভাবে এড়াতে পারি? http/https পোর্ট বাইন্ডিং, নতুন ঘোষিত বৈশিষ্ট্যটি ব্যবহার করে (2015-01-20) যা আপনাকে লক্ষ্য ডোমেনের DNS জোনটিতে একটি নির্দিষ্ট TXT রেকর্ড যোগ করে ডোমেন মালিকানা প্রমাণ করতে দেয়?


124
2018-01-21 22:13


উত্স


সাইড নোট: Certbot (এটি লেনসক্রিপ্ট ক্লায়েন্টের জন্য নতুন নাম) এখন ডিফল্টরূপে ওয়েবরুট-ভিত্তিক প্রমাণীকরণের অনুমতি দেয়। - Pierre Prinetti


উত্তর:


বর্তমানে এটি একটি DNS বৈধতা সঞ্চালন করা সম্ভব certbot ম্যানুয়াল মোডে LetsEncrypt ক্লায়েন্ট। অটোমেশন এছাড়াও সম্ভব (নীচে দেখুন)।

ম্যানুয়াল প্লাগইন

ম্যানুয়াল প্লাগইন সহ - আপনি ম্যানুয়াল যাচাই করতে পারেন।

certbot -d bristol3.pki.enigmabridge.com --manual --preferred-challenges dns certonly

তারপর সার্টবট যাচাইকরণের সাথে এগিয়ে যাওয়ার জন্য ডোমেনের জন্য একটি TXT রেকর্ড ম্যানুয়ালি আপডেট করার জন্য আপনাকে একটি নির্দেশনা সরবরাহ করবে।

Please deploy a DNS TXT record under the name
_acme-challenge.bristol3.pki.enigmabridge.com with the following value:

667drNmQL3vX6bu8YZlgy0wKNBlCny8yrjF1lSaUndc

Once this is deployed,
Press ENTER to continue

একবার আপনি DNS রেকর্ড আপডেট করলে, এন্টার টিপুন, সার্টবট অবিরত থাকবে এবং LetsEncrypt CA চ্যালেঞ্জটি যাচাই করলে, সাধারণভাবে শংসাপত্রটি জারি করা হয়।

আপনি ইন্টারঅ্যাক্টিভিটি কমিয়ে এবং শংসাপত্রের প্রশ্নের উত্তর দেওয়ার জন্য আরও বিকল্প সহ একটি কমান্ড ব্যবহার করতে পারেন। নোট করুন যে ম্যানুয়াল প্লাগইনটি এখনও অ-ইন্টারেক্টিভ মোড সমর্থন করে না।

certbot --text --agree-tos --email you@example.com -d bristol3.pki.enigmabridge.com --manual --preferred-challenges dns --expand --renew-by-default  --manual-public-ip-logging-ok certonly

নন-ইন্টারেক্টিভ মোডে চলমান হিসাবে পুনর্নবীকরণ ম্যানুয়াল প্লাগিনের সাথে কাজ করে না। অফিসিয়াল Certbot এ আরো তথ্য ডকুমেন্টেশন

আপডেট: ম্যানুয়াল হুক

নতুন সার্টবোট সংস্করণে আপনি ব্যবহার করতে পারেন আঙ্গুলসমূহ, যেমন --manual-auth-hook, --manual-cleanup-hook। হুক টাস্ক সঞ্চালন Certbot দ্বারা মৃত্যুদন্ড বহিরাগত স্ক্রিপ্ট হয়।

তথ্য পরিবেশ ভেরিয়েবলগুলিতে পাস করা হয় - উদাঃ, ডোমেন যাচাই করতে, টোকেন চ্যালেঞ্জ। Vars,: CERTBOT_DOMAIN, CERTBOT_VALIDATION, CERTBOT_TOKEN

certbot certonly --manual --preferred-challenges=dns --manual-auth-hook /path/to/dns/authenticator.sh --manual-cleanup-hook /path/to/dns/cleanup.sh -d secure.example.com

আপনি নিজের হ্যান্ডলার লিখতে বা ইতিমধ্যে বিদ্যমান ব্যবহার করতে পারেন, অনেকগুলি উপলব্ধ রয়েছে যেমন, ক্লাউডফ্লেয়ার DNS এর জন্য।

অফিসিয়াল Certbot আরো তথ্য হুক ডকুমেন্টেশন

অটোমেশন, পুনর্নবীকরণ, স্ক্রিপ্টিং

আপনি যদি DNS চ্যালেঞ্জ যাচাইকরণ স্বয়ংক্রিয় করতে চান তবে এটি বর্তমানে ভ্যানিলা সার্টবোটের সাথে সম্ভব নয়। আপডেট: Certbot হুক দিয়ে কিছু অটোমেশন সম্ভব।

আমরা এইভাবে একটি সহজ প্লাগিন তৈরি করেছি যা ডিএনএস অটোমেশন সহ স্ক্রিপ্টিংকে সমর্থন করে। এটা হিসাবে পাওয়া যায় certbot-বহিরাগত-প্রমাণীকরণ

pip install certbot-external-auth

এটি DNS, HTTP, TLS-SNI বৈধকরণ পদ্ধতিগুলিকে সমর্থন করে। আপনি হ্যান্ডলার মোড বা JSON আউটপুট মোডে এটি ব্যবহার করতে পারেন।

হ্যান্ডলার মোড

হ্যান্ডলার মোডে, শংসাপত্র + প্লাগইনটি যাচাইকরণ এবং ইনস্টলেশন সঞ্চালনের জন্য বহিরাগত হুক (একটি প্রোগ্রাম, শেল স্ক্রিপ্ট, পাইথন, ...) কল করে। অনুশীলনে আপনি একটি সহজ হ্যান্ডলার / শেল স্ক্রিপ্ট লিখুন যা ইনপুট আর্গুমেন্টগুলি পায় - ডোমেন, টোকেন এবং DNS এ পরিবর্তন করে। হ্যান্ডলার শেষ হলে, certbot স্বাভাবিক হিসাবে বৈধতা সঙ্গে আয়।

এটি আপনাকে একটি অতিরিক্ত নমনীয়তা দেয়, পুনর্নবীকরণও সম্ভব।

হ্যান্ডলার মোড সঙ্গে সামঞ্জস্যপূর্ণ নিরূদ DNS হুকস (পূর্বে letsencrypt.sh)। সাধারণ প্রদানকারীর জন্য ইতিমধ্যে অনেক DNS হুক রয়েছে (উদাঃ ক্লাউডফ্লারে, গোডডি, এডব্লিউএস)। রিপোজিটরিতে ব্যাপক উদাহরণ এবং উদাহরণ হ্যান্ডলারের সাথে একটি পাঠ্য রয়েছে।

সঙ্গে উদাহরণ নিরূদ DNS হুক:

certbot \
    --text --agree-tos --email you@example.com \
    --expand --renew-by-default \
    --configurator certbot-external-auth:out \
    --certbot-external-auth:out-public-ip-logging-ok \
    -d "bristol3.pki.enigmabridge.com" \
    --preferred-challenges dns \
    --certbot-external-auth:out-handler ./dehydrated-example.sh \
    --certbot-external-auth:out-dehydrated-dns \
    run 

JSON মোড

অন্য প্লাগইন মোড JSON মোড। এটি প্রতি লাইন একটি JSON বস্তু উত্পন্ন করে। এটি আরও জটিল ইন্টিগ্রেশন সক্ষম করে - উদাঃ, আনজিবল বা কিছু স্থাপনার পরিচালক সার্টবট কল করছে। যোগাযোগ STDOUT এবং STDIN এর মাধ্যমে সঞ্চালিত হয়। সিরাবট যাচাইয়ের জন্য তথ্য সহ JSON বস্তু তৈরি করে, যেমন,

certbot \
    --text --agree-tos --email you@example.com \
    --expand --renew-by-default \
    --configurator certbot-external-auth:out \
    --certbot-external-auth:out-public-ip-logging-ok \
    -d "bristol3.pki.enigmabridge.com" \
    --preferred-challenges dns \
    certonly 2>/dev/null

{"cmd": "perform_challenge", "type": "dns-01", "domain": "bs3.pki.enigmabridge.com", "token": "3gJ87yANDpmuuKVL2ktfQ0_qURQ3mN0IfqgbTU_AGS4", "validation": "ejEDZXYEeYHUxqBAiX4csh8GKkeVX7utK6BBOBshZ1Y", "txt_domain": "_acme-challenge.bs3.pki.enigmabridge.com", "key_auth": "3gJ87yANDpmuuKVL2ktfQ0_qURQ3mN0IfqgbTU_AGS4.tRQM98JsABZRm5-NiotcgD212RAUPPbyeDP30Ob_7-0"}

একবার DNS আপডেট হয়ে গেলে, কলারটি যাচাইয়ের সাথে চালিয়ে যেতে পারে এমন সংকেত দেওয়ার জন্য এটি সার্টবটের STDIN- এ নতুন লাইন অক্ষর পাঠায়।

এটি কেন্দ্রীয় পরিচালন সার্ভার থেকে অটোমেশন এবং সার্টিফিকেট পরিচালন সক্ষম করে। ইনস্টলেশনের জন্য আপনি SSH এর উপর সার্টিফিকেট স্থাপন করতে পারেন।

আরও তথ্যের জন্য অনুগ্রহ করে পড়ুন এবং উদাহরণ পড়ুন certbot-বহিরাগত-প্রমাণীকরণ GitHub।

সম্পাদনা করুন: একটি নতুন আছে ব্লগ পোস্ট DNS বৈধতা সমস্যা এবং প্লাগইন ব্যবহার বর্ণনা।

সম্পাদনা করুন: আমরা বর্তমানে আনসইবল 2-পদক্ষেপ যাচাইকরণে কাজ করি, শীঘ্রই বন্ধ হয়ে যাবে।


156
2017-10-29 13:00



অন্য সার্ভারে কোনও ওয়েবসাইট স্থানান্তরিত করার সময় আপনি A-রেকর্ড স্যুইচ করার আগে একটি নতুন শংসাপত্র চান। আপনি ম্যানুয়াল পদ্ধতি ব্যবহার করতে পারেন (certbot certonly --preferred-challenges dns -d example.com) প্রাথমিক অনুরোধের জন্য। পরীক্ষার এবং এ-রেকর্ডটি স্যুইচ করার পরে, সাধারণ ওয়েবরুট পদ্ধতি ব্যবহার করুন (certbot certonly webroot -d example.com -w /path/to/webroot) আগে ঠিক একই ডোমেইন নাম (গুলি) ব্যবহার করে। সঠিকভাবে সম্পন্ন হলে, সার্টবট বিদ্যমান শংসাপত্র / কনফিগারেশনটিকে চিনতে পারবে এবং পুনর্নবীকরণ সেটিংস আপডেট করবে, তাই শংসাপত্রটি স্বয়ংক্রিয়ভাবে ভবিষ্যতে পুনর্নবীকরণ করা হবে। - marcovtwout
এটি কাজ করে, EC2 স্তরে AWS ফায়ারওয়াল থেকে সাবধান - jruzafa
আমি নিশ্চিত জানি - ম্যানুয়াল-পাবলিক-আইপি-লগিং-ঠিক আছে মানে ... ডকুমেন্টেশন এটি সম্পর্কে রহস্যজনক এবং এটি ব্যবহার করে এমন সমস্ত উদাহরণ ব্যাখ্যা করে না ... এইটি সহ। - Rondo
পুনর্নবীকরণ প্রক্রিয়া প্রতিটি সময় একটি নতুন TXT রেকর্ড প্রয়োজন? - Old Geezer
@ ওলগিজার দৃশ্যত, এটা করে। আমি প্রক্রিয়াটি শুরু করেছি এবং এটি আমাকে শেষ বারের চেয়ে বিভিন্ন বিষয়বস্তু সহ একটি TXT রেকর্ড তৈরি করতে বলেছিল। - Dario Fumagalli


আমি ব্যবহার করতে সক্ষম ছিল dehydrated ক্লায়েন্ট DNS বৈধতা ব্যবহার করে একটি শংসাপত্র প্রাপ্ত।

https://github.com/lukas2511/dehydrated

./dehydrated --cron --domain my.domain.example.com --hook ./hook.route53.rb --challenge dns-01

আপনার ডোমেনের জন্য আপনাকে সঠিক DNS বৈধতা হুক ব্যবহার করতে হবে, তবে উদাহরণ হিসাবে কয়েকটি বিকল্প উপলব্ধ রয়েছে:

https://github.com/lukas2511/dehydrated/wiki/Examples-for-DNS-01-hooks


37
2018-02-18 21:45



এই আমার জন্য সত্যিই ভাল কাজ। আমি যে যোগফলটি যোগ করবো তা হলো আমাকে নির্দিষ্ট কিছু মোম নির্ভরতা সংজ্ঞায়িত করতে হয়েছে route53.rb হুক লিপি। - jmreicha


আজকের হিসাবে, অফিসিয়াল ক্লায়েন্ট DNS-01 চ্যালেঞ্জ টাইপ (এখনো) সমর্থন করে না।

দেখ https://community.letsencrypt.org/t/status-of-official-letsencrypt-clients-dns-01-challenge-support/9427

আমি এই দিকে তাকিয়ে নেই তাই আমি সত্যিই জানি না। আমার উচ্চ স্তরের বোঝাটি এখনও "আমাদের পাইথন ক্লায়েন্টে এখনও DNS চ্যালেঞ্জের জন্য কোনও সমর্থন নেই"।

আপনি অগ্রগতি অনুসরণ করতে পারেন এই পিআর। বিকল্পভাবে, আছে কিছু ক্লায়েন্ট যে ইতিমধ্যে এটি সমর্থন করে।


10
2018-01-28 11:34





আমি একটি লিখেছেন হুক লিপি জন্য letsencrypt.sh ক্লায়েন্ট যা আপনাকে DNS প্রদানকারীর জন্য এনক্রিপ্ট ডিএনএস যাচাই করার অনুমতি দেয় যা ব্যবহার করার জন্য একটি API সরবরাহ করে না (উর, ম্যানুয়াল এন্ট্রি এবং যাচাইকরণ প্রয়োজন হয়)।

আপনি এখানে পরীক্ষা করতে পারেন: https://github.com/jbjonesjr/letsencrypt-manual-hook


5
2018-05-22 16:55





আগের উত্তরগুলিতে উল্লিখিত হিসাবে, আপনি DNS এর মাধ্যমে DNS দ্বারা একটি ডোমেন যাচাই করতে পারেন:

  1. প্রয়োজনীয় অ্যাপ্লিকেশন ইনস্টল করুন (উবুন্টুর অধীনে): apt-get install -y git ruby letsencrypt git clone https://github.com/lukas2511/dehydrated.git git clone https://github.com/jbjonesjr/letsencrypt-manual-hook.git dehydrated/hooks/manual
  2. www.example.com এর জন্য ম্যানুয়াল DNS চ্যালেঞ্জ নিশ্চিতকরণের সাথে শংসাপত্র তৈরি করুন (আপনার ডোমেনের সাথে প্রতিস্থাপন করুন): ./dehydrated/dehydrated -c -t dns-01 -d www.example.com -k ./dehydrated/hooks /manual/manual_hook.rb

3
2017-12-16 10:36





বিভিন্ন সমন্বয় চেষ্টা করার পরে, এই ব্যবহার করে আমার জন্য কি কাজ নিরূদ এবং letsencrypt-ম্যানুয়াল-হুক গিট রিপোজিটরি। নিচের ধাপগুলি আপনার জন্য কাজ করে, তাহলে ভুলবেন না তারকা এই সংগ্রহস্থল

দ্রষ্টব্য: এই panticz.de এবং alexcline উত্তর ছাড়াও হয়

~$ git clone https://github.com/lukas2511/dehydrated.git
~$ git clone https://github.com/jbjonesjr/letsencrypt-manual-hook.git dehydrated/hooks/manual
~$ cd dehydrated
~$ ./dehydrated --register --accept-terms
~$ ./dehydrated --cron --challenge dns-01 --domain your.domain.com --hook ./hooks/manual/manual_hook.rb
#
# !! WARNING !! No main config file found, using default config!
#
Processing your.domain.com
 + Signing domains...
 + Creating new directory /Users/vikas/dehydrated/certs/your.domain.com ...
 + Creating chain cache directory /Users/vikas/dehydrated/chains
 + Generating private key...
 + Generating signing request...
 + Requesting authorization for your.domain.com...
 + 1 pending challenge(s)
 + Deploying challenge tokens...
Checking for pre-existing TXT record for the domain: '_acme-challenge.your.domain.com'.
Create TXT record for the domain: '_acme-challenge.your.domain.com'. TXT record:
'gkIxxxxxxxIcAESmjF8pjZGQrrZxxxxxxxxxxx'
Press enter when DNS has been updated...

আপনি একটি হ্যাশ পাবেন (উপরের কমান্ডটি চালানোর পরে), একটি তৈরি করুন TXT আপনার DNS রেকর্ড। নীচের কমান্ড বা এটি চালানোর দ্বারা কাজ করে নিশ্চিত করুন GSuite টুলবক্স

~$ dig TXT _acme-challenge.your.domain.com. +short @8.8.8.8
"gkIxxxxxxxIcAESmjF8pjZGQrrZxxxxxxxxxxx"
~$

এখন, প্রেস প্রবেশ করান প্রম্পটে। TXT রেকর্ড আপডেট করা হলেও এটি আমার জন্য কাজ করে নি। আমি Ctrl + C চাপতে এবং আবার কমান্ড চালাতে হয়েছিল।

~$ ./dehydrated --cron --challenge dns-01 --domain your.domain.com --hook ./hooks/manual/manual_hook.rb
#
# !! WARNING !! No main config file found, using default config!
#
Processing your.domain.com
 + Signing domains...
 + Generating private key...
 + Generating signing request...
 + Requesting authorization for your.domain.com...
 + 1 pending challenge(s)
 + Deploying challenge tokens...
Checking for pre-existing TXT record for the domain: '_acme-challenge.your.domain.com'.
Found gkIxxxxxxxIcAESmjF8pjZGQrrZxxxxxxxxxxx. match.
 + Responding to challenge for your.domain.com authorization...
Challenge complete. Leave TXT record in place to allow easier future refreshes.
 + Challenge is valid!
 + Requesting certificate...
 + Checking certificate...
 + Done!
 + Creating fullchain.pem...
 + Walking chain...
 + Done!
~$

এখন, আপনার পাবলিক এবং প্রাইভেট Certs এখানে উপস্থিত।

$ ls certs/your.domain.com/privkey.pem certs/your.domain.com/fullchain-1517576424.pem

পুনর্নবীকরণ (সর্বনিম্ন অপেক্ষা সময় 30 দিন), আবার একই কমান্ড।

~$ ./dehydrated --cron --challenge dns-01 --domain your.domain.com --hook ./hooks/manual/manual_hook.rb

2
2018-02-02 13:44





হুগো লান্ডাউ গো এসিএমই ক্লায়েন্ট লিখেছেন (https://github.com/hlandau/acme) যা DNS চ্যালেঞ্জগুলিকে সমর্থন করে (BIND এর nsupdate প্রোটোকল সহ)। এটা অন্তত 18 মাসের জন্য আমার জন্য নিশ্ছিদ্রভাবে কাজ করছে।


0
2017-07-03 18:07