В
በአስተያየቶቹ ውስጥ ለሊኑክስ በጣም የተለመዱ የድር አገልጋዮች መመሪያዎችን እንድንጽፍ ተጠየቅን - nginx እና Apache።
ለመጀመር ምን ያስፈልግዎታል?
- ማንኛውም ዘመናዊ የሊኑክስ ስርጭት. በኤምኤክስ ሊኑክስ 18.2_x64 ላይ የሙከራ ዝግጅት አድርጌያለሁ። ይህ በእርግጥ የአገልጋይ ስርጭት አይደለም፣ ነገር ግን ለዴቢያን ምንም ልዩነቶች ሊኖሩ አይችሉም። ለሌሎች ስርጭቶች፣ ወደ ውቅር ቤተ-መጻሕፍት የሚወስዱት ዱካዎች ትንሽ ሊለያዩ ይችላሉ።
- ማስመሰያ ሞዴሉን መጠቀሙን እንቀጥላለን
Rutoken EDS PKI , ለድርጅቶች አጠቃቀም የፍጥነት ባህሪያት ተስማሚ ነው. - በሊኑክስ ውስጥ ካለው ማስመሰያ ጋር ለመስራት የሚከተሉትን ጥቅሎች መጫን ያስፈልግዎታል።
libccid libpcsclite1 pcscd pcsc-tools opensc
የምስክር ወረቀቶችን መስጠት
በቀደሙት ጽሁፎች፣ የአገልጋይ እና የደንበኛ ሰርተፊኬቶች የማይክሮሶፍት ሲኤ በመጠቀም እንደሚሰጡ ላይ ተመስርተናል። ነገር ግን ሁሉንም ነገር በሊኑክስ ውስጥ እያዘጋጀን ስለሆነ እነዚህን የምስክር ወረቀቶች ስለመስጠት አማራጭ መንገድ እንነግርዎታለን - ሊኑክስን ሳይለቁ።
XCA እንደ CA እንጠቀማለን
ቢያስቆጥርም ገና መጀመሩ ነው
- ጫን ፦
$ apt-get install xca
- እና እንሮጣለን:
$ xca
- የመረጃ ቋታችንን ለCA - /root/CA.xdb እንፈጥራለን
የምስክር ወረቀት ባለስልጣን ዳታቤዝ አስተዳዳሪው ብቻ በሚደርስበት አቃፊ ውስጥ እንዲያከማች እንመክራለን። ይህ ሁሉንም ሌሎች የምስክር ወረቀቶች ለመፈረም የሚያገለግሉትን የስር የምስክር ወረቀቶችን የግል ቁልፎች ለመጠበቅ አስፈላጊ ነው.
ቁልፎችን ይፍጠሩ እና የ CA ሰርቲፊኬት ይፍጠሩ
የህዝብ ቁልፍ መሠረተ ልማት (PKI) በተዋረድ ስርዓት ላይ የተመሰረተ ነው። በዚህ ስርዓት ውስጥ ዋናው ነገር የስር የምስክር ወረቀት ባለስልጣን ወይም ስርወ CA ነው. የምስክር ወረቀቱ መጀመሪያ መፈጠር አለበት።
- ለ CA RSA-2048 የግል ቁልፍ እንፈጥራለን። ይህንን ለማድረግ, በትሩ ላይ የግል ቁልፎች መግፋት አዲስ ቁልፍ እና ተገቢውን አይነት ይምረጡ.
- ለአዲሱ ቁልፍ ጥንድ ስም ያዘጋጁ። CA Key ብዬ ጠራሁት።
- የተፈጠረውን የቁልፍ ጥንድ በመጠቀም የCA ሰርተፍኬትን እራሱ እንሰጣለን። ይህንን ለማድረግ ወደ ትሩ ይሂዱ ሰርቲፊኬቶች እና ጠቅ ያድርጉ አዲስ የምስክር ወረቀት.
- መምረጥዎን እርግጠኛ ይሁኑ SHA-256ምክንያቱም SHA-1 መጠቀም ከአሁን በኋላ ደህንነቱ የተጠበቀ ተደርጎ ሊወሰድ አይችልም።
- እንደ አብነት መምረጥዎን እርግጠኛ ይሁኑ [ነባሪ] CA. ላይ ጠቅ ማድረግን አይርሱ ሁሉንም ይተግብሩ, አለበለዚያ አብነት አልተተገበረም.
- በትሩ ውስጥ ያስተያየትዎ ርዕስ የእኛን ቁልፍ ጥንድ ይምረጡ. እዚያም ሁሉንም የምስክር ወረቀቶች ዋና መስኮች መሙላት ይችላሉ.
ቁልፎችን እና የ https አገልጋይ ሰርተፍኬት መፍጠር
- በተመሳሳይ መልኩ ለአገልጋዩ RSA-2048 የግል ቁልፍ እንፈጥራለን፣ የአገልጋይ ቁልፍ ብዬዋለሁ።
- የምስክር ወረቀት ስንፈጥር የአገልጋይ ሰርተፍኬት በCA ሰርተፍኬት መፈረም እንዳለበት እንመርጣለን።
- መምረጥን አይርሱ SHA-256.
- እንደ አብነት እንመርጣለን [ነባሪ] HTTPS_አገልጋይ. ላይ ጠቅ ያድርጉ ሁሉንም ይተግብሩ.
- ከዚያ በትሩ ላይ ያስተያየትዎ ርዕስ ቁልፋችንን ይምረጡ እና አስፈላጊዎቹን መስኮች ይሙሉ።
ለተጠቃሚው ቁልፎችን እና የምስክር ወረቀት ይፍጠሩ
- የተጠቃሚው የግል ቁልፍ በእኛ ማስመሰያ ላይ ይከማቻል። ከእሱ ጋር ለመስራት PKCS#11 ላይብረሪ ከድረ-ገጻችን መጫን ያስፈልግዎታል። ለታዋቂ ስርጭቶች, እዚህ የሚገኙትን ዝግጁ የሆኑ ፓኬጆችን እናሰራጫለን -
https://www.rutoken.ru/support/download/pkcs/ . እንዲሁም ለ arm64, armv7el, armv7hf, e2k, mipso32el, ከእኛ ኤስዲኬ ሊወርዱ የሚችሉ ስብሰባዎች አሉን -https://www.rutoken.ru/developers/sdk/ . ለሊኑክስ ከስብሰባዎች በተጨማሪ ለማክሮስ፣ ፍሪብስድ እና አንድሮይድ ስብሰባዎችም አሉ። - አዲስ PKCS#11 አቅራቢ ወደ XCA ማከል። ይህንን ለማድረግ ወደ ምናሌው ይሂዱ አማራጮች ወደ ትር PKCS # 11 አቅራቢ.
- እኛ ይጫኑ አክል እና ወደ PKCS # 11 ቤተ-መጽሐፍት የሚወስደውን መንገድ ይምረጡ። በእኔ ሁኔታ usrliblibrtpkcs11ecp.so ነው።
- ቅርጸት የተሰራ Rutoken EDS PKI token እንፈልጋለን። የrtAdmin መገልገያውን ያውርዱ -
https://dev.rutoken.ru/pages/viewpage.action?pageId=7995615 - እኛ እንሰራለን
$ rtAdmin -f -q -z /usr/lib/librtpkcs11ecp.so -u <PIN-код пользователя>
- እንደ ቁልፍ አይነት የ RSA-2048 ቁልፍን ለ Rutoken EDS PKI እንመርጣለን. ይህንን ቁልፍ የደንበኛ ቁልፍ ደወልኩለት።
- የፒን ኮዱን ያስገቡ። እና የቁልፍ ጥንድ ሃርድዌር ማመንጨት እስኪጠናቀቅ እንጠብቃለን።
- ለተጠቃሚው የምስክር ወረቀት ከአገልጋዩ የምስክር ወረቀት ጋር በማመሳሰል እንፈጥራለን። በዚህ ጊዜ አብነት እንመርጣለን [ነባሪ] HTTPS_ደንበኛ እና ጠቅ ማድረግን አይርሱ ሁሉንም ይተግብሩ.
- በትሩ ውስጥ ያስተያየትዎ ርዕስ ስለ ተጠቃሚው መረጃ አስገባ. የምስክር ወረቀቱን ለትክንያቱ ለማስቀመጥ ለሚጠየቀው ጥያቄ አዎንታዊ መልስ እንሰጣለን.
በውጤቱም, በትሩ ላይ የምስክር ወረቀቶች በ XCA ውስጥ እንደዚህ ያለ ነገር ማግኘት አለብዎት።
አገልጋዮቹን እራሳቸው ማዋቀር ለመጀመር ይህ አነስተኛ የቁልፍ እና የምስክር ወረቀቶች ስብስብ በቂ ነው።
ለማዋቀር የCA ሰርተፍኬት፣ የአገልጋይ ሰርተፍኬት እና የአገልጋይ የግል ቁልፍ ወደ ውጭ መላክ አለብን።
ይህንን ለማድረግ በ XCA ውስጥ ባለው ተዛማጅ ትር ላይ የሚፈለገውን ግቤት ይምረጡ እና ጠቅ ያድርጉ ወደ ውጪ ላክ.
እም
የ nginx አገልጋይን እንዴት መጫን እና ማሄድ እንዳለብኝ አልጽፍም - በዚህ ርዕስ ላይ በበየነመረብ ላይ በዚህ ርዕስ ላይ በቂ ጽሑፎች አሉ, ኦፊሴላዊውን ሰነድ ሳይጠቅሱ. ቶከንን በመጠቀም HTTPS እና ባለ ሁለት ደረጃ ማረጋገጫን በቀጥታ ወደማዋቀር እንግባ።
የሚከተሉትን መስመሮች በ nginx.conf ውስጥ ወደ አገልጋይ ክፍል ያክሉ:
server {
listen 443 ssl;
ssl_verify_depth 1;
ssl_certificate /etc/nginx/Server.crt;
ssl_certificate_key /etc/nginx/ServerKey.pem;
ssl_client_certificate /etc/nginx/CA.crt;
ssl_verify_client on;
}
በ nginx ውስጥ ssl ን ከማዋቀር ጋር የተዛመዱ የሁሉም መለኪያዎች ዝርዝር መግለጫ እዚህ ይገኛል -
ለራሴ የጠየቅኳቸውን ባጭሩ እገልጻለሁ፡-
- ssl_verify_client - የምስክር ወረቀቱ የእምነት ሰንሰለት መረጋገጥ እንዳለበት ይገልጻል።
- ssl_verify_depth - በሰንሰለቱ ውስጥ ያለውን የታመነ ስርወ ሰርተፍኬት ፍለጋ ጥልቀት ይገልጻል። የእኛ የደንበኛ ሰርተፊኬት ወዲያውኑ በስሩ ሰርተፍኬት ላይ የተፈረመ በመሆኑ ጥልቀቱ ወደ 1. የተጠቃሚ ምስክር ወረቀት በመካከለኛ CA ላይ ከተፈረመ 2 በዚህ ግቤት ውስጥ መገለጽ አለበት እና ወዘተ.
- ssl_client_certificate - ወደ የታመነው ስርወ ሰርተፍኬት የሚወስደውን መንገድ ይገልጻል፣ ይህም በተጠቃሚው የምስክር ወረቀት ላይ እምነትን ሲፈትሽ ጥቅም ላይ ይውላል።
- ssl_certificate/ssl_certificate_key - ወደ አገልጋይ ሰርተፍኬት/የግል ቁልፍ የሚወስደውን መንገድ ያመልክቱ።
በማዋቀሪያው ውስጥ ምንም የፊደል አጻጻፍ አለመኖሩን እና ሁሉም ፋይሎች በትክክለኛው ቦታ ላይ መሆናቸውን እና የመሳሰሉትን ለማረጋገጥ nginx -t ን ማሄድን አይርሱ።
እና ያ ብቻ ነው! እንደሚመለከቱት, ማዋቀሩ በጣም ቀላል ነው.
በፋየርፎክስ ውስጥ እየሰራ መሆኑን ማረጋገጥ
ሁሉንም ነገር በሊኑክስ ውስጥ ሙሉ በሙሉ ስለሠራን ተጠቃሚዎቻችንም በሊኑክስ ውስጥ እንደሚሠሩ እንገምታለን (ዊንዶውስ ካላቸው ፣ ከዚያ
- ፋየርፎክስን እናስጀምር።
- መጀመሪያ ያለ ማስመሰያ ለመግባት እንሞክር። ይህንን ምስል እናገኛለን:
- እንቀጥላለን ስለ: ምርጫዎች # ግላዊነት።, እና ወደ እኛ እንሄዳለን የደህንነት መሳሪያዎች…
- እኛ ይጫኑ ሸክምአዲስ PKCS#11 መሳሪያ ሾፌር ለመጨመር እና ወደ librtpkcs11ecp.so የሚወስደውን መንገድ ይግለጹ።
- የምስክር ወረቀቱ የሚታይ መሆኑን ለማረጋገጥ ወደ መሄድ ይችላሉ። የምስክር ወረቀት አስተዳዳሪ. ፒንዎን እንዲያስገቡ ይጠየቃሉ። ከትክክለኛ ግቤት በኋላ, በትሩ ላይ ያለውን ነገር ማረጋገጥ ይችላሉ የምስክር ወረቀቶችዎ የእኛ የምስክር ወረቀት ከቶከን ታየ.
- አሁን በቶከን እንሂድ። ፋየርፎክስ ለአገልጋዩ የሚመረጥ የምስክር ወረቀት እንዲመርጡ ይጠይቅዎታል። የእኛን የምስክር ወረቀት ይምረጡ።
- ትርፍ!
ማዋቀሩ አንድ ጊዜ ተከናውኗል, እና በእውቅና ማረጋገጫ ጥያቄ መስኮት ላይ እንደሚታየው, ምርጫችንን ማስቀመጥ እንችላለን. ከዚህ በኋላ ወደ ፖርታል በገባን ቁጥር ቶከን ማስገባት እና በቅርጸት ወቅት የተገለፀውን የተጠቃሚውን ፒን ኮድ ማስገባት ብቻ አለብን። ከእንደዚህ አይነት ማረጋገጫ በኋላ አገልጋዩ የትኛው ተጠቃሚ እንደገባ አስቀድሞ ያውቃል እና ምንም ተጨማሪ የማረጋገጫ መስኮቶችን መፍጠር አይችሉም ፣ ግን ወዲያውኑ ተጠቃሚውን ወደ የግል መለያው ያስገቡ።
Apache
ልክ እንደ nginx፣ ማንም ሰው apache ሲጭን ምንም አይነት ችግር ሊገጥመው አይገባም። ይህንን የድር አገልጋይ እንዴት እንደሚጭኑ ካላወቁ ኦፊሴላዊውን ሰነድ ብቻ ይጠቀሙ።
እና የእኛን HTTPS እና ባለ ሁለት ደረጃ ማረጋገጫ ማዋቀር እንጀምራለን፡
- በመጀመሪያ mod_ssl ን ማግበር ያስፈልግዎታል፡-
$ a2enmod ssl
- እና ከዚያ የጣቢያው ነባሪ HTTPS ቅንብሮችን አንቃ፡-
$ a2ensite default-ssl
- አሁን የማዋቀሪያውን ፋይል እናስተካክላለን፡ /etc/apache2/sites-enabled/default-ssl.conf:
SSLEngine on SSLProtocol all -SSLv2 SSLCertificateFile /etc/apache2/sites-enabled/Server.crt SSLCertificateKeyFile /etc/apache2/sites-enabled/ServerKey.pem SSLCACertificateFile /etc/apache2/sites-enabled/CA.crt SSLVerifyClient require SSLVerifyDepth 10
እንደሚመለከቱት ፣ የመለኪያዎቹ ስሞች በተግባር በ nginx ውስጥ ካሉት መለኪያዎች ስሞች ጋር ይጣጣማሉ ፣ ስለዚህ እኔ አላብራራቸዋለሁ። በድጋሚ, ለዝርዝሩ ፍላጎት ያለው ማንኛውም ሰው ወደ ሰነዱ እንኳን ደህና መጡ.
አሁን አገልጋያችንን እንደገና እንጀምራለን-$ service apache2 reload $ service apache2 restart
እንደሚመለከቱት ፣ በዊንዶውስ ወይም ሊኑክስ ላይ በማንኛውም የድር አገልጋይ ላይ ባለ ሁለት ደረጃ ማረጋገጫን ማዋቀር ቢበዛ አንድ ሰዓት ይወስዳል። እና አሳሾችን ማዋቀር 5 ደቂቃ ያህል ይወስዳል። ብዙ ሰዎች በሁለት-ደረጃ ማረጋገጫ ማቀናበር እና መስራት አስቸጋሪ እና ግልጽ ያልሆነ ነው ብለው ያስባሉ. ጽሑፋችን ይህንን ተረት ቢያንስ በትንሹም ቢሆን ያወግዛል ብዬ ተስፋ አደርጋለሁ።
በዳሰሳ ጥናቱ ውስጥ የተመዘገቡ ተጠቃሚዎች ብቻ መሳተፍ ይችላሉ።
በ GOST 34.10-2012 መሠረት TLSን ከእውቅና ማረጋገጫዎች ጋር ለማዋቀር መመሪያዎችን ያስፈልግዎታል
-
አዎ፣ TLS-GOST በጣም አስፈላጊ ነው።
-
አይ, በ GOST ስልተ ቀመሮች ማስተካከል አስደሳች አይደለም
44 ተጠቃሚዎች ድምጽ ሰጥተዋል። 9 ተጠቃሚዎች ድምፀ ተአቅቦ አድርገዋል።
ምንጭ: hab.com