આ લેખમાં, આપણે ઇન્સ્ટોલ અને ગોઠવણીની પ્રક્રિયાનું અન્વેષણ કરીશું સર્ટબોટ Linux સર્વર પર. અમે વિગતવાર સમજાવીશું લેટ્સ એન્ક્રિપ્ટ SSL/TLS પ્રમાણપત્ર કેવી રીતે મેળવવું તમારા ડોમેન માટે. અમે તેને વેબ સર્વર (જેમ કે Nginx અથવા Apache) પર કેવી રીતે ઇન્સ્ટોલ કરવું અને તમારા વેબ સંસાધન સાથે સતત સુરક્ષિત જોડાણ સુનિશ્ચિત કરવા માટે સ્વચાલિત પ્રમાણપત્ર નવીકરણ કેવી રીતે સેટ કરવું તેનું પણ વર્ણન કરીશું.
સર્ટબોટ એક મફત, ઓપન-સોર્સ ટૂલ છે જે સ્વચાલિત સંપાદન અને નવીકરણ માટે રચાયેલ છે SSL/TLS પ્રમાણપત્રો. તે સર્વર અને ક્લાયંટ વચ્ચેના જોડાણને સુરક્ષિત કરવામાં, ડેટાને અનધિકૃત ઍક્સેસથી સુરક્ષિત કરવામાં મહત્વપૂર્ણ ભૂમિકા ભજવે છે. Certbot SSL પ્રમાણપત્રના ઇન્સ્ટોલેશન અને નવીકરણ પ્રક્રિયાને સરળ બનાવે છે. પ્રમાણપત્ર માત્ર સુરક્ષામાં વધારો કરતું નથી, પરંતુ તે તમારા વેબ સંસાધનમાં વપરાશકર્તાનો વિશ્વાસ પણ વધારે છે, જેનાથી સાઇટની પ્રતિષ્ઠા અને તેના સર્ચ એન્જિન રેન્કિંગ બંનેમાં સુધારો થાય છે.
સર્ટબોટ ઇન્સ્ટોલ કરી રહ્યું છે
મોટાભાગના વિતરણોમાં મૂળભૂત રીતે Certbot શામેલ છે, તેથી તેને ઇન્સ્ટોલ કરવા માટે ડેબિયન / ઉબુન્ટુ સિસ્ટમો માટે, તમારે ફક્ત પેકેજ સૂચિ અપડેટ કરવાની જરૂર છે:
apt update
પછી, ઇન્સ્ટોલેશન પ્રક્રિયા શરૂ કરો:
apt install certbot
Certbot એવા પ્લગઇન્સને સપોર્ટ કરે છે જે વેબ સર્વર માટે પ્રમાણપત્રના સેટઅપ અને ગોઠવણીને સરળ બનાવે છે. આ પ્લગઇન્સને ઇન્સ્ટોલ કરવા માટે, અનુરૂપ આદેશનો ઉપયોગ કરો:
apt install certbot python3-certbot-nginx # for Nginx
apt install certbot python3-certbot-apache # for Apache
માટે સ્થાપન પ્રક્રિયા લાલ ટોપી સિસ્ટમો (જેમ કે આરએચએલ, CentOS, Fedora) થોડું અલગ છે. શરૂઆતમાં, તમારે EPEL રીપોઝીટરી ઉમેરવાની જરૂર છે:
yum install epel-release
પછી ટૂલ ઇન્સ્ટોલ કરો:
yum install certbot
એ જ રીતે, ચોક્કસ વેબ સર્વર માટે પ્લગઇન પસંદ કરવાનો વિકલ્પ પણ છે:
yum install python3-certbot-nginx # for Nginx
yum install python3-certbot-apache # for Apache
ઇન્સ્ટોલેશન પછી, તમે તરત જ પ્રમાણપત્ર મેળવવા માટે આગળ વધી શકો છો.
SSL પ્રમાણપત્ર મેળવવું
આ વિભાગમાં, આપણે ચોક્કસ વેબ સર્વરથી સ્વતંત્ર રીતે પ્રમાણપત્ર મેળવવાની પ્રક્રિયાની ચર્ચા કરીશું, ત્યારબાદ Nginx અને Apache માટે પ્રમાણપત્ર ઇન્સ્ટોલ કરવાની પ્રક્રિયાનું વર્ણન કરીશું. જોકે, પહેલા પ્રોગ્રામના વાક્યરચના અને કાર્યક્ષમતાને સમજવી જરૂરી છે. તે નીચે મુજબ દેખાય છે:
certbot command option -d domain
મુખ્ય આદેશોમાં શામેલ છે:
certbot certonly - પ્રમાણપત્ર મેળવે છે પણ ઇન્સ્ટોલ કરતું નથી.certbot certificates - આ આદેશ બધા ઇન્સ્ટોલ કરેલા પ્રમાણપત્રોની યાદી દર્શાવે છે.certbot renew - હાલના પ્રમાણપત્રને લંબાવે છે.certbot revoke - હાલના પ્રમાણપત્રને રદ કરે છે.certbot delete - હાલનું પ્રમાણપત્ર કાઢી નાખે છે.
સૌથી વધુ ઉપયોગમાં લેવાતા વિકલ્પો છે:
--nginx - ડોમેન ચકાસણી માટે Nginx રૂપરેખાંકન સ્ક્રિપ્ટોનો ઉપયોગ કરે છે.--apache - ડોમેન ચકાસણી માટે અપાચે રૂપરેખાંકન સ્ક્રિપ્ટોનો ઉપયોગ કરે છે.-d - ડોમેન્સની યાદી જેના માટે પ્રમાણપત્રની વિનંતી કરવામાં આવી છે.--standalone - ડોમેન ચકાસણી માટે સ્ટેન્ડઅલોન મોડનો ઉપયોગ કરે છે.--manual - મેન્યુઅલ ડોમેન ચકાસણી કરે છે.
આ ફક્ત સૌથી વધુ વારંવાર આવતા આદેશો અને વિકલ્પોનું ઉદાહરણ છે. તમે સહાય વિભાગમાં પ્રોગ્રામ ક્ષમતાઓની સંપૂર્ણ સૂચિથી પોતાને પરિચિત કરી શકો છો:
certbot –help
હવે આપણે પ્રમાણપત્ર મેળવવા આગળ વધીએ છીએ. ઉદાહરણ તરીકે, આપણે એક માટે પ્રમાણપત્ર મેળવીશું વર્ચ્યુઅલ સર્વર yourusername.pserver.space જેવા મફત ત્રીજા-સ્તરના ડોમેન માટે
પ્રથમ, તમારે આદેશ દાખલ કરવાની જરૂર છે:
certbot certonly
જવાબમાં, ઉપયોગિતા તમને ડોમેન માલિકી ચકાસવા માટે એક પદ્ધતિ પસંદ કરવાનું કહેશે:
જો તમારી પાસે રૂપરેખાંકિત વેબ સર્વર ન હોય અથવા તમે હાલના સર્વરમાં ફેરફાર કરવા માંગતા ન હોવ તો પહેલો વિકલ્પ અનુકૂળ છે. આ પદ્ધતિ ડોમેન પર તમારા અધિકારની પુષ્ટિ કરવા માટે એક અસ્થાયી વેબ સર્વર બનાવે છે. તે સરળ અને ઝડપી સેટઅપ માટે આદર્શ છે. આ પદ્ધતિ પસંદ કરતી વખતે, પોર્ટ 80 ને મફત રાખવું મહત્વપૂર્ણ છે.
જો તમારી પાસે પહેલાથી જ વેબ સર્વર કાર્યરત હોય, અને તમે ડોમેનના અધિકારને ચકાસવા માટે તેનો ઉપયોગ કરવા માંગતા હો, તો બીજો વિકલ્પ વધુ સારો છે. સર્ટબોટ તમારા સર્વર પર એક ફોલ્ડરમાં ખાસ ફાઇલો મૂકે છે, જે પછી પ્રમાણન કેન્દ્ર દ્વારા તપાસવામાં આવે છે.
આપણે પહેલો વિકલ્પ પસંદ કરીએ છીએ અને આગળ ક્લિક કરીએ છીએ. આ તબક્કે, તમારે આ કરવાની જરૂર પડશે:
- ઇમેઇલ સરનામું દાખલ કરો;
- સેવાની શરતો સાથે સંમત થાઓ;
- કંપની અને તેના ભાગીદારો વતી ઇમેઇલ્સ પ્રાપ્ત કરવા માટે સંમત થાઓ અથવા ઇનકાર કરો;
- જે ડોમેન નામ માટે પ્રમાણપત્ર જારી કરવામાં આવ્યું છે તે સ્પષ્ટ કરો.
સર્ટબોટ ટૂલ વડે પ્રમાણપત્ર જારી કરવાની પ્રક્રિયા પૂર્ણ કર્યા પછી, તે ડિરેક્ટરીનો માર્ગ સૂચવશે જ્યાં જારી કરાયેલ પ્રમાણપત્ર અને તમારા એકાઉન્ટનો ડેટા સંગ્રહિત છે:
તમારે ફક્ત મેળવેલ પ્રમાણપત્રને જરૂરી સેવા સાથે લિંક કરવાનું બાકી છે.
Nginx અથવા Apache માટે પ્રમાણપત્ર ઇન્સ્ટોલ કરી રહ્યું છે
આ વિભાગ ધારે છે કે કેટલીક મૂળભૂત શરતો પૂરી થઈ છે:
- તમે પહેલાથી જ Nginx અથવા Apache વેબ સર્વર ઇન્સ્ટોલ અને ગોઠવેલ છે. તે ડોમેન નામ દ્વારા ઇન્ટરનેટ પરથી ઍક્સેસિબલ હોવું જોઈએ જેના માટે તમે પ્રમાણપત્ર મેળવવાનો ઇરાદો ધરાવો છો;
- ટૂલના ઇન્સ્ટોલેશન દરમિયાન, તમે યોગ્ય આદેશનો ઉપયોગ કરીને Nginx અથવા Apache માટે પ્લગઇન પણ ઇન્સ્ટોલ કર્યું હતું;
- ફાયરવોલ પોર્ટ 80 અને 443 પર કનેક્શનની મંજૂરી આપે છે. જો આ પોર્ટ કનેક્શન માટે બંધ હોય, તો આવનારા કનેક્શન માટે સેવા અનુપલબ્ધ રહેશે. ફાયરવોલ કામગીરી વિશે વધુ વિગતો માટે, અમે આ લેખમાં ચર્ચા કરી છે Linux પર ફાયરવોલ સેટ કરી રહ્યા છીએ.
એકવાર બધી શરતો પૂર્ણ થઈ જાય, પછી તમે સીધા પ્રમાણપત્ર જારી કરવા માટે આગળ વધી શકો છો. અમે Nginx નો ઉપયોગ કરીને સર્વર પર SSL પ્રમાણપત્ર મેળવવાની પ્રક્રિયાને ઉદાહરણ તરીકે ધ્યાનમાં લઈશું. જો કે, જો તમે Apache વેબ સર્વરનો ઉપયોગ કરી રહ્યા છો, તો પ્રક્રિયા સંપૂર્ણપણે સમાન છે.
પ્રમાણપત્ર મેળવવા માટે, તમારે આદેશ દાખલ કરવાની જરૂર છે:
certbot --nginx # for Nginx
certbot --apache # for Apache
જવાબમાં, ટૂલ વિનંતી કરશે: એક ઇમેઇલ સરનામું, લેટ્સ એન્ક્રિપ્ટ સેવાના ઉપયોગની શરતો માટે સંમતિ, અને સેવા અને તેના ભાગીદારો વતી ઇમેઇલ મોકલવાની પરવાનગી.
તે પછી, તમારે તે ડોમેન નામ સ્પષ્ટ કરવાની જરૂર પડશે જેના માટે પ્રમાણપત્ર જારી કરવામાં આવ્યું છે. જો તે ડોમેનમાં ઉલ્લેખિત હોય તો સર્ટબોટ આપમેળે ડોમેન નક્કી કરી શકે છે. સર્વર_નામ માટે ક્ષેત્ર Nginx રૂપરેખાંકન અથવા સર્વરનામ અને સર્વરઅલિયસ માટે અપાચે. જો તે ઉલ્લેખિત ન હોય, તો પ્રોગ્રામ તમને સૂચિત કરશે અને તમને ડોમેન નામ મેન્યુઅલી દાખલ કરવાનું કહેશે. પછી, ઉપયોગિતા પૂછશે કે HTTP થી HTTPS પ્રોટોકોલ પર વિનંતીઓનું રીડાયરેક્શન સક્ષમ કરવું કે નહીં. સ્વચાલિત રીડાયરેક્શન સેટ કરવા માટે, તમારે બીજો વિકલ્પ પસંદ કરવો જોઈએ:
થોડા સમય પછી, Certbot તમને ઉલ્લેખિત ડોમેન માટે પ્રમાણપત્રના સફળ સંપાદનની જાણ કરશે. આ બિંદુથી, બધા આવનારા જોડાણો પોર્ટ 80 થી 443 પર રીડાયરેક્ટ કરવામાં આવશે. આ ટૂલ ડિરેક્ટરીઓ પ્રદર્શિત કરશે જેમાં તમે બધા પ્રમાણપત્ર ડેટા અને Let's Encrypt એકાઉન્ટ વિગતો શોધી શકો છો:
સંદેશમાં પ્રાપ્ત પ્રમાણપત્રની માન્યતા અવધિ અને બધા સક્રિય પ્રમાણપત્રોના સંચાલન માટેના મહત્વપૂર્ણ વિકલ્પોનો પણ ઉલ્લેખ કરવામાં આવશે:
- ચોક્કસ. આ વિકલ્પનો ઉપયોગ ઓટોમેટિક વેબ સર્વર ગોઠવણી વિના પ્રમાણપત્ર મેળવવા અથવા અપડેટ કરવા માટે થાય છે. Certbot ફક્ત પ્રમાણપત્રની વિનંતી કરશે અથવા અપડેટ કરશે પરંતુ સર્વર ગોઠવણીમાં કોઈપણ ઓટોમેટિક ફેરફારો કરશે નહીં. પહેલાં, અમે વેબ સર્વર સાથે જોડાયેલા વિના પ્રમાણપત્ર મેળવવા માટે આ વિકલ્પનો ઉપયોગ કરતા હતા.
- નવીકરણ Certbot દ્વારા મેળવેલા અને તેમની માન્યતા અવધિમાં રહેલા બધા પ્રમાણપત્રોના સ્વચાલિત નવીકરણ માટે ઉપયોગમાં લેવાય છે. આ પ્રોગ્રામ બધા પ્રમાણપત્રોની તપાસ કરશે, અને જો તેમાંથી કોઈપણ 30 દિવસ કે તેથી ઓછા સમયમાં સમાપ્ત થાય છે, તો તે આપમેળે નવીકરણ કરવામાં આવશે.
સૂચનાઓમાં આગળ, આપણે દર ત્રણ મહિને વપરાશકર્તાના હસ્તક્ષેપ વિના પ્રમાણપત્રોનું સ્વચાલિત નવીકરણ કેવી રીતે સેટ કરવું તેની ચર્ચા કરીશું.
સર્ટબોટમાં ઓટોમેટિક સર્ટિફિકેટ રિન્યુઅલ
ડેબિયન/ઉબુન્ટુ માટે
આ ઓપરેટિંગ સિસ્ટમ્સનો ઉપયોગ કરતી વખતે, Certbot ઇન્સ્ટોલ કરેલા પ્રમાણપત્રોના સ્વચાલિત નવીકરણ માટે કાર્ય સૂચિમાં આપમેળે સ્ક્રિપ્ટ ઉમેરે છે. તમે નીચેના આદેશનો ઉપયોગ કરીને સ્ક્રિપ્ટની કાર્યક્ષમતા ચકાસી શકો છો:
systemctl status certbot.timer
પ્રતિભાવ સેવાની સ્થિતિ, તેમજ રૂપરેખાંકન ફાઇલ ધરાવતી ડિરેક્ટરી પ્રદર્શિત કરશે. તમે આને કોઈપણ ટેક્સ્ટ એડિટરનો ઉપયોગ કરીને ખોલી શકો છો. જો તમને Linux માં ટેક્સ્ટ એડિટર્સનો અનુભવ ન હોય, તો અમે ભલામણ કરીએ છીએ કે તમે તમારી જાતને તેનાથી પરિચિત થાઓ અમારું વિહંગાવલોકન સૌથી લોકપ્રિય ઉકેલોમાંથી. આ કિસ્સામાં, આપણે નેનોનો ઉપયોગ કરીશું:
nano /lib/systemd/system/certbot.timer
બધા મહત્વપૂર્ણ પરિમાણો પ્રકાશિત થાય છે:
- સમયપત્રક દર્શાવે છે કે સેવા દિવસમાં બે વાર 00:00 અને 12:00 વાગ્યે ચાલશે;
- બીજું મૂલ્ય સેકન્ડમાં રેન્ડમ વિલંબ દર્શાવે છે જે ટાઈમરની શરૂઆતમાં ઉમેરવામાં આવશે. આ કિસ્સામાં, તે 43,200 સેકન્ડ (12 કલાક) છે, જે લોન્ચને વધુ રેન્ડમ બનાવે છે અને ભાર ફેલાવે છે;
- આ પરિમાણ ખાતરી કરે છે કે જો સિસ્ટમ શટડાઉન દરમિયાન ટાઈમર ચલાવવાનું માનવામાં આવતું હતું, તો તે સ્ટાર્ટઅપ પર તરત જ સક્રિય થઈ જશે.
તમે આ આદેશનો ઉપયોગ કરીને પ્રમાણપત્ર નવીકરણની ફરજિયાત તપાસ પણ ચલાવી શકો છો:
certbot renew --dry-run
આ આદેશનો ઉપયોગ કરીને, પ્રમાણપત્રો અપડેટ થશે નહીં. તેના બદલે, સાધન તેની સમાપ્તિ પર પ્રમાણપત્ર મેળવવા જેવી ક્રિયાઓ કરશે. આ રીતે, તમે સ્વચાલિત નવીકરણ સંબંધિત સેવાની કાર્યક્ષમતાની ખાતરી કરી શકો છો.
CentOS, Fedora અને અન્ય માટે
Red Hat ફેમિલી સિસ્ટમ્સ પર ઓટોમેટિક અપડેટ્સ સક્ષમ કરવાની પ્રક્રિયા થોડી અલગ છે. ડેબિયન/ઉબુન્ટુથી વિપરીત, CentOS અને અન્ય સિસ્ટમ્સ માટે, તમારે શેડ્યૂલરમાં મેન્યુઅલી કાર્ય ઉમેરવાની જરૂર છે. આ માટે, અમે ક્રોન ટૂલ:
crontab -e
પછી, ખુલતી ફાઇલમાં, નીચેની લીટી ઉમેરો:
0 12 * * * /usr/bin/certbot renew --quiet
ચાલો આદેશના મુખ્ય દલીલોને તોડી નાખીએ:
- અમલ સમય. આ કિસ્સામાં, આદેશ દરરોજ 12:00 વાગ્યે આપમેળે ચાલશે;
- Certbot નો ઉપયોગ કરીને SSL/TLS પ્રમાણપત્રોને નવીકરણ કરવાનો આદેશ;
- આ --શાંત ફ્લેગ આઉટપુટને દબાવી દે છે, જેનાથી પ્રક્રિયા વધુ છુપાયેલી બને છે અને સિસ્ટમ લોગ અથવા ડિસ્પ્લેમાં ઓછી કર્કશ બને છે.
આદેશ ઉમેર્યા પછી, તમારે ફાઇલમાં થયેલા ફેરફારો સાચવવાની જરૂર છે.
ડેબિયન/ઉબુન્ટુની જેમ, તમે પ્રમાણપત્ર નવીકરણની ફરજિયાત તપાસ પણ શરૂ કરી શકો છો:
certbot renew --dry-run
આદેશના સફળ અમલનું પરિણામ નીચે મુજબ દેખાય છે:
ઉપસંહાર
અમે Linux સર્વર પર Certbot ઇન્સ્ટોલ અને ગોઠવવાની વ્યાપક પ્રક્રિયાનું અન્વેષણ કર્યું છે. આપેલી સૂચનાઓનું પાલન કરીને, તમે Let's Encrypt માંથી સફળતાપૂર્વક SSL/TLS પ્રમાણપત્ર મેળવી શકો છો, તેને તમારા વેબ સર્વર પર ઇન્સ્ટોલ કરી શકો છો અને સતત સુરક્ષા અને તમારા વેબ સંસાધનમાં વિશ્વાસ વધારવા માટે સ્વચાલિત નવીકરણ ગોઠવી શકો છો. Certbot સાથે, તમે વપરાશકર્તાઓ માટે સરળતાથી વિશ્વસનીય અને સુરક્ષિત વાતાવરણ બનાવી શકો છો.