.htaccess ፋይል መመሰገኛ፣ በ Apache ወይም LiteSpeed የተመሰረቱ ሆስቲንግ ላይ አንድ ዳይሬክቶሪን በተጠቃሚ ስምና የይለፍ ቃል ማስተናገድ፣ .htaccess ፋይሉን ከውጭ እንዳይነበብ መከላከድ፣ የ HTTPS ግዴታ ማድረግና በጥፊ መዳረሻዎች ያሉ አግባብ የደህንነት መንገዶችን ማግኘት የተለመዱ የደህንነት ስርዓቶች ናቸው። በጣም የሚያገለግሉት አፕሊኬሽን የ .htaccess በ Basic Auth የዳይሬክቶሪ ዳሰሳን በይለፍ ቃል ማስተናገድና የይለፍ ቃላቱን .htpasswd ፋይል ውስጥ ማከማቸት ነው። ነገር ግን አስፈላጊ ነገር ይህ ነው፡ Basic Auth ብቻውን የሚሰጠውን መረጃ አይመሰገኝም፤ ለታማኝ ተጠቃሚነት አስፈላጊ የ SSL ሰርቲፊኬት በ HTTPS ላይ እንዲሰራ ይገባል። SSL የማስረጃ ይዘት ደህንነታች የድረ-ገጽ እንግዳ
በድህረ ገፆች ላይ ደህንነት ብዙ ጊዜ ከትልቅ የአግባብ ቅጥ ፣ የተወሰኑ የሶፍትዌር ስርዓቶች ወይም ከውድ መደበኛ መጨማሪዎች ጋር ይታያል። ነገር ግን በትክክል ተዘዋዋሪ የ .htaccess ፋይል፣ በተለይ በተካፋይ ሆስቲንግ፣ WordPress፣ የተለየ PHP አፕሊኬሽንና በትንሹ ኢንዱስትሪ ስርዓቶች ውስጥ የመጀመሪያ የመከላከያ ግንባር ነው። በዚህ ፋይል ውስጥ የአስተዳደር ፓነል ያሉ አስፈላጊ ፎልደሮችን በይለፍ ቃል ማስተናገድ፣ የ HTTP ትራፊክን ወደ HTTPS መምራት፣ የዳይረክቶሪ ዝርዝርን ማቋረጥ፣ የተወሰኑ ፋይሎችን ማከል፣ የ hotlink አጠቃቀምን መቀነስና መሰረታዊ የደህንነት ርዕሶችን አንቀሳቅስ ትችላለህ።
በዚህ መምሪያ በ .htaccess ፋይል መመሰገኛ ማከልን በደረጃ በደረጃ እናሳያለን፣ በእውነተኛ ህይወት በጣም የሚጠቀሙትን የደህንነት ትእዛዞችን እናቀርባለን፣ እና ለመተግበሪያ ቀዳሚ ምሳሌዎችን እናጋራለን። በውስጥ ያሉ ትእዛዞች በ Apache mod_rewrite፣ mod_auth_basic እና mod_headers የሚደገፉ ሆስቲንግ አካባቢዎች ላይ ይሰራሉ። LiteSpeed ሰርቨሮችም በአትክክል Apache ጋር የሚያስተላለፉ ስለሆነ ብዙ ህጎች በተመሳሳይ ሁኔታ ይሰራሉ። ነገር ግን በህይወት ላይ በድህረ ገፅ መተግበሪያ ከማድረግ በፊት አስፈላጊ የፋይል ቅድሚያን እንዲያወስ እና በፍቃድ የሚችለው በመለያየት የ subdomain ላይ መሞከር ይመከራል። ዶማይን አስተዳደር የድር ገፅ የተደጋጋሚ
.htaccess ፋይል ምንድነው እና ለደህንነት ለምን አስፈላጊ ነው?
.htaccess የድህረ ገፅ አገልጋይ ለተወሰኑ ፋይሎች እና አንዳንድ አናባሪ ፋይሎች የሚሰራውን መንገድ የሚወስን የአካባቢ አዋጅ ፋይል ነው። የድህረ ገፅ መሰረታዊ ማውጫ public_html ውስጥ ሲደብቅ፣ የተለያዩ የድህረ ገፅ አዋጅ ሁሉንም የሚነጽ መሆን ይችላል፤ ለምሳሌ፣ public_html ውስጥ ያለው .htaccess ፋይል ለድህረ ገፅዎ ዋና መሰረት የሚሰሩ መመሪያዎችን ይቆጣጠራል። ከፋይል ውስጥ ሲደብቅ ደግሞ የተወሰኑ ፋይሎችና አናባሪዎቻቸው ብቻ የሚገባቸውን ይቆጣጠራል።
በዚህ ፋይል ላይ በሰርቨሩ ደረጃ የተቆጣጠሩ የመዳረሻ መመሪያዎች ስለሚደርሱ፣ በድህረ ገፅዎ መተግበሪያ ኮድ አልትጠብቅም በፊት የተወሰኑ ጥያቄዎችን ማግደም ይችላሉ። ለምሳሌ፣ admin ፋይልን በይለፍ ቃል በማጥቃት ከሚያገለግሉ ወንጀለኞች WordPress, የተለያዩ ፓነሎች ወይም PHP ፋይሎች ውስጥ ሳይደርሱ፣ መመሪያው በሰርቨሩ ደረጃ አለመታየት ይችላሉ። ይህ ዘዴ በብዙ የመዳረሻ ፍጥነት ምክንያት brute force አበረታች ያደርጋል እና በመተግበሪያ ደረጃ ያለውን የደህንነት ክፍተት ማግባትን ይከታተላል።
.htaccess ፋይል በደህንነት የሚያሳያቸው ዋና ጥቅሞች:
- የመዳረሻ መመሪያዎችን ከመተግበሪያ ኮድ ሳይቀየር ማቅረብ ይችላል።
- ተወሰኑ ፋይሎች በየተጠቃሚ ስም እና ይለፍ ቃል በማጥቃት ማስጠበቅ ይችላሉ።
- HTTP ጥያቄዎችን ለ HTTPS በማቅረብ ማስተካከል ይችላል።
- የዝርዝር ዝርዝር ንዴት፣ የሚሰሩ ፋይሎች ማዳረሻ እና hotlink አጠቃቀም ማድረግ ይችላሉ።
- በደህንነት ማስታወቂያዎች browser አጠቃቀም የተቆጣጠሩ ያደርጋሉ።
- በ IP አድራሻ፣ የፋይል ቅርጸት ወይም የጥያቄ መንገድ ማቆጣጠር ይችላል።
ነገር ግን .htaccess ብቻውን የደህንነት ሁሉንም አይደርም። የታደገ ሶፍትዌር፣ ጠንካራ የይለፍ ቃል ፖሊሲ፣ የተደጋጋሚ ምህዳር ፣ አንደኛ Hostragons ማዕከል፣ WAF፣ የሚያበረታች ሶፍትዌር መቃኘት እና SSL ማህተም አብረው ሲያጠቀሙ ምርጥ ውጤት ይሰጣል። የእንግዳ ደህንነት ወርድፕሬስ ደህንነት
.htaccess ፋይል መረጃ ማስተላለፊያ፡ Basic Auth እና .htpasswd
.htaccess ፋይል ማስተላለፊያ በተለምዶ ሁለት በተለያዩ መንገዶች ይጠቀማል። የመጀመሪያው፣ ወደ አንድ ፎልደር ሲገቡ የተጠቃሚ ስም እና የይለፍ ቃል እንዲጠየቁ፣ ሁለተኛውም .htaccess ፋይል ከውጭ እንዳይታየው መከላከያ ነው። የመጀመሪያው በ Basic Auth ይፈጸማል፣ የሁለተኛው ምንጭ እንደ ፋይል መዳረሻ የአገዛዝ ህጎች ጥቅም ይውላል።
በ Basic Auth መዋቅር .htaccess ፋይል የመለያ ማረጋገጫ አዋጅን ይይዛል፣ .htpasswd ፋይል ደግሞ የተጠቃሚ ስምና የተሰርሰረ የይለፍ ቃል መረጃን ይቆሸም። የይለፍ ቃል በግልፅ አልፍት አይደለም። በዘመናዊ ስርዓቶች bcrypt፣ Apache MD5 ወይም SHA የ hash መንገዶች ይጠቀማሉ። በጥሩ ደረጃ የሚመረጥ አካል የ hosting ኮንትሮል ፓነልዎ የዲሬክቶሪ ምስጢርነት ወይም የይለፍ ቃል የተጠበቀ ዲሬክቶሪ ባህሪ እንዲጠቀሙ ነው፣ ምክንያቱም ፓነሎቹ ብዙውን ጊዜ .htpasswd ፋይልን በትክክለኛው ቦታ ይያዙና የይለፍ ቃል hash አሰራርን ራስሰር ይወጣሉ።
የይለፍ ቃል መከላከያ አዋጅ እንዲህ ይሆናል፦
AuthType Basic
AuthName Korunan Alan
AuthUserFile /home/kullanici/.htpasswd
Require valid-user
ይህ አራት መስመር ትርጉም ቀላል ነው፡ የመለያ ማረጋገጫ አይነት Basic ተሰናክሏል፣ በ browser ላይ የሚታየው የአካባቢ ስም ተመረጠ፣ የተጠቃሚዎች የይለፍ ቃል በሚገኝበት .htpasswd ፋይል የአገልጋይ ፍጥረት መንገድ ተዘረጋ፣ እና ትክክለኛ ተጠቃሚዎች ብቻ ሊደርሱ ይችላሉ። ከዚህ በተጨማሪ AuthUserFile መስመር ላይ URL መጻፍ በተደጋጋሚ የሚፈጠረው ስህተት ነው። ትክክለኛ ግብ የ web አድራሻ ሳይሆን በ server ላይ ያለ ፋይል መንገድ ነው። ለምሳሌ https://siteadi.com/.htpasswd የተሳሳተ ነው፣ /home/kullanici/.htpasswd ደግሞ ትክክለኛ መቀጣጠል ነው።
.htpasswd ፋይል የት እንደሚያስቀመጡ?
.htpasswd ፋይልን ከቻሉ public_html ውጭ ያስቀመጡ። እንዲሁም የ server ቅታት በተሳሳተ ሁኔታም ፋይል በ web በቀጥታ አይጠራም። ለምሳሌ የስትዎ ፋይል system /home/hesapadi/public_html ውስጥ ከሚሰራ፣ .htpasswd ፋይልን /home/hesapadi/.htpasswd እንደ web root ውጭ ማስቀመጥ የበለጠ ደህንነት ያስገኛል።
በፋይል ፍቃድ አንፃፃፃ፣ ለ .htpasswd 640 ወይም 644፣ ለ .htaccess 644 ጥቅም ይላል። በ server ውስጥ ቅታት ተለይቶ ፍቃዶች አስፈላጊ ሊሆኑ ይችላሉ፤ ነገር ግን 777 እንደ ሁሉም ተጠቃሚ ሊጻፍ የሚችል ፍቃድ የደህንነት አደጋ ያመጣል እና አይጠቀምበት።
.htaccess እንዴት የዝርዝር ማስተካከያ ይደርስ? እርዳታ በእርስዎ እንደ ደረሰበት
ከታች የተጠቀሱት እርምጃዎች በተለይ admin, panel, test, staging, report ወይም ለደንበኞች ብቻ የተዘጋጁ ፋይል ቦታዎችን ለመጠበቅ የሚፈልጉ ተጠቃሚዎች ይጠቀሙበታል። ሂደቱን ለመጀመር በፊት አሁን ያለዎት .htaccess ፋይል backup ያድርጉ። አንድ ትንሽ ተግባራዊ ስህተት ብቻም 500 Internal Server Error ሊያመጣ ይችላል።
1. የሚጠበቅ ዝርዝሩን ይምረጡ
መጀመሪያ የሚቆረጡት ዝርዝር የት እንደሆነ ያረጋግጡ። ለምሳሌ siteadi.com/admin ብቻ ማስተካከያ የፈለጉ ከሆነ .htaccess ፋይል በadmin ቦታ ውስጥ ማድረግ ይችላሉ። ሁሉንም ሳይት በጊዜያዊ ቁልፍ መዘጋት እና ብቻ ለተፈቀደ ሰዎች መከፈት ከፈለጉ ዝርዝሩን በroot ዝርዝር ያለው .htaccess ፋይል ውስጥ ያክሉ።
2. .htpasswd ተጠቃሚ ያቀርቡ
በHosting ኮንትሮል ፓነል ውስጥ የፓስዎርድ የተጠበቀ ዝርዝር መሣሪያ ካለ ይህ ቀላል መንገድ ነው። መሣሪያ ከለም SSH የሚያገኙ ሰርቨሮች ላይ htpasswd ትእዛዝ በመጠቀም ተጠቃሚ ማቀርብ ይችላሉ። ምሳሌ የሆነው፦ htpasswd -c /home/kullanici/.htpasswd admin። ይህ ትእዛዝ admin ተጠቃሚ ፓስዎርድ ይፈጥራል እና በፋይል ውስጥ ይቆማል። የአሁኑ ፋይል ላይ አዲስ ተጠቃሚ ሲያክሉ -c አይጠቀሙ፤ አዲስ ፋይል እንዳይፈጠር ይሆናል።
3. .htaccess የጥበቃ ህግ ያክሉ
የሚጠበቅ ዝርዝር ውስጥ .htaccess ፋይል ውስጥ የሚከተሉትን መስመሮች ያክሉ:
AuthType Basic
AuthName የአስተዳደር ፓነል
AuthUserFile /home/kullanici/.htpasswd
Require valid-user
ከተክተሉ በኋላ በ browser ውስጥ ወደ ዝርዝሩ ይግቡ። የተጠቃሚ ስም እና ፓስዎርድ የሚጠየቀው በሚታየው ጊዜ ሂደቱ ተሳክቷል። ፓስዎርድ ትክክል ሆኖ መግባት ከማይቻል AuthUserFile አድራሻ ልክ አይሆንም ወይም .htpasswd ፋይል ፍቃድ ሰርቨሩ ሊነበት አይችልም።
4. በ HTTPS በስተቀር አትጠቀሙበት
Basic Auth የተጠቃሚ መረጃን Base64 በመቀየር ያደርጋል፤ ይህ ምንም እውነተኛ ጥንካሬ ያለው የማስተካከያ ስርዓት አይደለም። ትራፊክ በ HTTP በሚሄድ ጊዜ የአውት ተከታታይ ሰው የተጠቃሚ ስምና ፓስዎርድ ሊያገኝ ይችላል። ምክንያቱም .htaccess የማስተካከያ ህግ ሁልጊዜ ከ HTTPS ግዴታ ጋር አድርጉ። በHostragons SSL አንቀሳቅሶ እና በኋላ HTTPS የምድር ህግ በመጨመር ይህንን ሪስክ ማሳካት ይችላሉ። SSL ቅድሚያ HTTPS እንደሚወዳደር
HTTPS አስፈላጊነት እና www መራመድ
የሳይቱን ደህንነት ለማሳደግ የሚሰጥበት ቀዳሚ እርምጃ ሁሉንም ትራፊክ ወደ HTTPS ማራመድ ነው። SSL ሰርቲፍኬት ከተነቃቃ በኋላ በሩቅ ዴርክቶሪው ያለው .htaccess ፋይል ውስጥ ከሚከተለው አሰሳ የተገኘ መስመር ማከል ይቻላል፦
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
ይህ መስመር በHTTP የሚመጡ ጥያቄዎችን በተመሳሳይ ድር ስም እና መስመር ወደ HTTPS ያራመዳል። 301 ቀጣይ መራመድ ማለት ሲሆን SEO ዕውነት የሚያሳይ ምልክት ለመሆኑም ይሰራል። ነገር ግን በሳይትዎ ተጣባቂ proxy, CDN ወይም load balancer ካለ እና HTTPS ሁኔታ በተለያዩ አይነት header ይታያል። በዚህ ሁኔታ የhosting አቅራቢዎ የሚጠቅምበት መራመድ መስመር መምረጥ ይገባዋል።
የwww እና www የማይያዝ domain ማረጋገጫ ውስጥ ደግሞ ትክክለኛ ሁኔታ አለች። ሁሉንም ትራፊክ www የማይያዝ ቅርጸ በሚሰጥ ማድረግ ከፈለጉ ይህን አጠቃቀም ይጠቀሙ፦
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.ornekdomain\.com$ [NC]
RewriteRule ^(.*)$ https://ornekdomain.com/$1 [L,R=301]
እዚህ ornekdomain.com የሚሰጥዎትን የድር ስም በራስዎ domain ይቀይሩ። HTTPS እና www መራመድን በተያያዘ ጊዜ ተደጋጋሚ redirect እንዳይፈጠር ተጠንቀቁ። ከፍተኛው ውስጥ ተጠቃሚውን በአንድ እርምጃ ወደ መጨረሻ URL ያደርሳል። ዶማይን መታች የSEO እቅድ ወዮታእር
.htaccess የስፔሻል ጥበቃ ትእዛዞች ለመጨመር የሚያደርጉ ዋና አይነቶች
ከዚህ ታቦል በታች፣ .htaccess እንደተለመደ የሚጠቀሙ የጥበቃ ትእዛዞችንና መተግበሪያዎችን ይዘው ያሳያል። ምንም ትእዛዝ ከማከልዎ በፊት ወቅታዊ ማዋቀርዎን ይመርምሩ፤ የWordPress፣ Laravel ወይም የተለያዩ CMS የማዋቀር ህጎችን በጥቂት የሚያዳርጉ ሊኖሩ ይችላሉ።
| ዓላማ | ምሳሌ ትእዛዝ ወይም ዳይሬክቲቭ | መተግበሪያ | የሚጠነቀቁበት |
|---|---|---|---|
| የፋይል ቤት መቆለፊያ | AuthType Basic, Require valid-user | Admin, staging, የመግለጫ ፋይል ቤቶች | አስፈላጊ በHTTPS ጋር ማዋቀር ይገባል |
| HTTPS አሳይት ግዴታ | RewriteCond %{HTTPS} off | ሁሉንም የሳይት ትራፊክ ደህንነት ለማድረግ | CDN ካለ ልዩ ህግ ይያዛል |
| የፋይል ቤት ዝርዝር መዘጋጅት | Options -Indexes | የindex ፋይል የለውም ፋይል ቤቶች | የፋይል አዋቂ የታየ አይታይ |
| .htaccess ጥበቃ | Require all denied | የማዋቀር ፋይሎች እንዳይታዩ | የApache ትርጉም አይቅርበት ሊለያይ |
| Hotlink መከላከያ | RewriteCond %{HTTP_REFERER} | ማህበረሰብ የአካባቢ ሰነዶች ማስተላለፊያ ለመቀነስ | CDNና ማህበረሰብ preview ይፈትኑ |
| የጥበቃ ራስጌዎች | Header set X-Frame-Options SAMEORIGIN | የብራውዘር ደህንነት ጥቃቶችን ለመቀነስ | mod_headers አንቀሳቅስ ይሁን |
የፋይል ቤት ዝርዝር መዘጋጅት
የindex.html፣ index.php ወይም የመደበኛ ግቢ ፋይል በአንዱ ፋይል ቤት ካልተገኘ አፓች የፋይል ቤት ዝርዝር ሊያሳይ ይችላል። ይህ ለመቀየሪያ፣ ማህበረሰብ፣ ጊዜያዊ ሪፖርቶች ወይም የቆላ ኮድ የሚያደርጉ ሰነዶች ምርጥ ማዕከል ይሆናል። በቀላሉ የፋይል ቤት ዝርዝር ማዘጋጅት ይችላሉ:
Options -Indexes
ይህን ህግ ከተጨመሩ በኋላ ተጠቃሚዎች ውስጥ ያሉትን ፋይሎች ማየት አይችሉም። የindex ፋይል የለውም ፋይል ቤት በብዙ ጊዜ 403 Forbidden ትእዛዝ ይመጣል። ይህ ደህንነት ለማሳሰብ የሚፈልጉ አይነት ነው።
.htaccess እና የጥበቃ ፋይሎች መድረሻ መከላከያ
.htaccess ፋይልዎ በድህረገፅ በኩል አይታይ ይገባል። Apache በተለምድ ይጠብቃል፤ ነገር ግን ተጨማሪ ደህንነት ለማስጨመር የሚከተለው ህግ ተጠቅመው ይችላሉ:
<Files .htaccess>
Require all denied
</Files>
በዚህ አይነት የ.env፣ composer.json፣ composer.lock፣ config.php.bak፣ backup.sql፣ database.sql ያሉ ፋይሎችም ከውጭ መድረሻ ይዘጋጃሉ። በLaravel፣ Symfony ወይም የተለያዩ PHP መተግበሪያዎች .env ፋይል የዳታቤዝ ምስጢር፣ API ቁልፍ፣ SMTP መረጃ ይይዛል። ይህ ፋይል ከተሰራበት መቆጣጠር የሚሰራውን ስርዓት ሙሉ ሊያደርስበት ይችላል።
በብዙ የጥበቃ ፋይል ስም ለመከላከያ የሚከተለው ህግ ይሠራል:
<FilesMatch ^(\.env|composer\.(json|lock)|package\.json|yarn\.lock|.*\.sql|.*\.bak)$>
Require all denied
</FilesMatch>
እንደዚህ አይነት ህጎችን ሲጨምሩ የመተግበሪያዎት ለሚያስፈልጉ የሚያደርጉ ፋይሎችን አይገድሉ በማረጋገጥ ይችላሉ። ለምሳሌ የማረጋገጫ ፋይሎች ወይም መዋቀር ፋይሎች በስህተት ሊያካትቱ ይችላሉ፣ በዚህ ሁኔታ የተቀላቀሉ የተለያዩ አገልግሎቶች የማይሰሩ ሊሆኑ ይችላሉ።
በተወሰኑ ፋይል ቤቶች PHP አይሰራ
የUpload ፋይል ቤት በአዋቂ እንደማይታይ የተጠቃሚ የመድረሻ አካባቢ ነው። በደካማ የፋይል ጫና ቁጥር አለ ሲሆን የተጠቃሚ የPHP ፋይሎች ቢጭኑ አይሰሩ፣ ትልቅ አደጋ ይሆናል። በማህበረሰብ ወይም የሚያደርጉ ፋይሎች የሚጭኑበት ፋይል ቤት PHP አይሰራ የሚል ከተቀመጠ ተጨማሪ ጥበቃ ይሰጣል።
በUpload ፋይል ቤት ውስጥ .htaccess ፋይል በማከል የሚቻል ህግ:
<FilesMatch \.php$>
Require all denied
</FilesMatch>
ይህ ህግ በዚህ ፋይል ቤት PHP ፋይሎችን መድረሻ ይዘጋጃል። በWordPress አካባቢ wp-content/uploads ውስጥ ይህ ዘዴ በተለመደ ይጠቀማል፤ ነገር ግን የተለያዩ plugins ልዩ ፋይል ማዋቀር ይያዛሉ፣ ፋይሎቹን በቅድሚያ ማረጋገጥ ይገባል።
Hotlink መከላከያ ያህል ትራፊክ ማስቀነስ
Hotlink ሌላ ድህረገፅ እርስዎ የሚያደርጉ የማህበረሰብ ፋይሎችን በቀጥታ በገፅታቸው ማስተጋበያ ነው። ይህ የባንድዊድት አጠቃቀምን ያሳድጋል፣ እና የድህረገፅ አፈጻጸምን ይጎዳል። በቀላሉ የHotlink መከላከያ ህግ እንዲህ ነው:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?ornekdomain\.com [NC]
RewriteRule \.(jpg|jpeg|png|gif|webp)$ - [F,NC]
ይህ ህግ በምንም ባይሆን referer እና ከየእርስዎ domain አይመጣ የሚያደርጉ የማህበረሰብ ፋይሎችን ይዘጋጃል። ነገር ግን የGoogle Images፣ ማህበረሰብ preview፣ CDN domain ወይም አካባቢ አገልግሎት ካሉ ይህን ወደ whitelist ያክሉ። የCDN ጥቅም የድር ገፅ ውጤታማነት
በተወሰኑ IP አድራሻዎች መፍቀድ ወይም መከላከያ
የAdmin ፓነል መድረሻ፣ ከቢሮ IP አድራሻዎት ብቻ እንዲኖር የIP አድራሻ አግባብ ተጨማሪ ጥበቃ ይሰጣል። ለApache 2.4 ከዚያ በላይ ቀላል ህግ:
Require ip 203.0.113.10
ይህ ህግ ሲተገበር ለተወሰኑ IP ብቻ የመድረሻ ፍቃድ ይሰጣል። ከተለዋዋጭ IP ቢጠቀሙ አንደኛ ነው፤ አድራሻ ቢቀየር የራስዎ Admin ፓነል ማድረሻ ሊደግም አይችሉም። ለተለያዩ አቀማመጦች የIP አግባብን ከመቆለፊያ ጋር መዋደን የተሻለ ነው።
ለተወሰኑ ማጥፋት የተሰራ አደጋ አድራሻ የሚከላከይ ህግ:
<RequireAll>
Require all granted
Require not ip 198.51.100.25
</RequireAll>
IP አከላከያ በትንሽ የሚያደርጉ ጥቃቶች ላይ የሚሰራ ነው፤ ነገር ግን በbotnet ወይም ተለዋዋጭ IP ቢጠቀሙ ብቻውን አይበቃም። በዚህ ሁኔታ የመተግበሪያ ጥበቃ ፍርድ የክብደት ግደታ፣ የአገልግሎት አድማጭና የሰርቨር ጥበቃ ምርጦች የተሻለ ምርጫ ናቸው።
የደህንነት ራስጌዎች፡ በብራውዘር ደረጃ ተጨማሪ ጥበቃ
.htaccess ለግብዣ መቆጣጠሪያ ብቻ ሳይሆን፣ የብራውዘር ደህንነት ራስጌዎችንም ለማያያዝ ይሄን መጠቀም ይቻላል። mod_headers ከተነቃቀለ በኋላ፣ የታች ራስጌዎች በብዙ ሳይቶች የመሰረታዊ ደህንነት ደረጃን ይጨምራሉ፦
Header always set X-Content-Type-Options nosniff
Header always set X-Frame-Options SAMEORIGIN
Header always set Referrer-Policy strict-origin-when-cross-origin
Header always set Permissions-Policy geolocation=(), microphone=(), camera=()
X-Content-Type-Options nosniff ብራውዘሩ የፋይል አይነትን በትንበያ እንዳይከፍት ይከለከላል። X-Frame-Options SAMEORIGIN ድር ጣቢያው በሌላ domain ውስጥ iframe አይታተት የሚያደርገውን ይገደባል፤ clickjacking አደጋንም ያነሳል። Referrer-Policy የወደፊት አድራሻ መረጃ በመላከት ምን አይነት መረጃ እንደሚተጋ ይቆጣጠራል። Permissions-Policy ደግሞ ብራውዘሩ ካሜራ፣ ማይክሮፎንና ቦታ ፍቃድ እንዳይጠቀሙ ይገደባል።
Content-Security-Policy ወይም CSP የበለጠ ጠንካራ የደህንነት ራስጌ ነው፤ ነገር ግን በጥንቃቄ መተግበር ያስፈልጋል። በጣም ጠንካራ የCSP ህይወት የሚከተሉት፤ ማስታወቂያ፣ ትንበያ፣ ክፍያ፣ የቀጥታ ድጋፍ ወይም የfont አገልግሎት ማቋረጥ ይችላል። ስለዚህ መጀመሪያ በመሪፓርት ሞድ መሞከር፣ ከዚያም በአነጋጋሪ ሁኔታ ሕይወት ላይ ማውለድ ይመጣጣል።
ከመተግበሪያ በፊት የመረጃ ዝርዝር

.htaccess ለውጦች በፍጥነት ውጤት ያሳያሉ። ስለዚህ የደህንነት ትዕዛዞችን ከማከል በፊት አንድ ቀላል የመረጃ ዝርዝር ማድረግ የአገልግሎት ማቋረጥ አደጋውን ይቀንሳል።
- ያለዎትን .htaccess ፋይል በኮምፒዩተርዎ ላይ ያድምጡ።
- SSL ሰርቲፊኬትዎ ንቁና ትክክለኛ ተገጥመ እንደሆነ ያረጋግጡ።
- የመምጣት መመሪያዎችን አንድ በአንድ ያክሉ፤ ሁሉንም በአንድ ጊዜ አትቀይሩ።
- 500, 403 እና 404 ስህተቶችን በብራውዘርና በሰርቨር ስህተት መዝገቦች ውስጥ ያረጋግጡ።
- WordPress, Laravel ወይም የተለየ ሶፍትዌር የራስ የrewrite መመሪያዎቹን አትሰርዙ።
- የይለፍ ቃል ጥበቃ የሚያጠቀሙበት ቦታ ላይ የHTTPS ግዴታን ያሞክሩ።
- CDN, cache እና የደህንነት ቅጥ አሳታሚዎችን ብቻ ብቻ ቢጠቀሙ የተያያዘ አደጋ እንዳለ ያነሱ።
- በሞባይል፣ በዴስክቶፕ እና በተለያዩ ብራውዘር ላይ ግባ፣ ፎርም እና የክፍያ ሂደትን ያሞክሩ።
መመሪያዎችን በክፍል ብቻ ብቻ ማድረግ በተግባር አስፈላጊ ነው። ምሳሌ የሚሆን፣ ቅድመ ጥርጥር እንደ Options -Indexes አክል እና ፈትን፣ ከዚያ HTTPS የመምጣት መመሪያ አክል፣ በኋላም የይለፍ ቃል ጥበቃ ትእዛዝ ያክሉ። እንዲሁ ችግር ከተፈጠረ በቅርብ ማወቅ የችግሩ ምንጭ የተፈጠረው በየመስተኛው ትእዛዝ እንደሆነ በፍጥነት ያገኙ።
በብዙ ጊዜ የሚከሰቱ ስህተቶችና መፍትሄ መንገዶች
500 Internal Server Error
ይህ ስህተት ብዙውን ጊዜ የአንዳንድ አይነት ስህተት፣ የማይደገፍ የተግባር ትእዛዝ ወይም የትክክል ሞጁል አጠቃቀም አይደለም በማለት ይከሰታል። ለምሳሌ mod_headers አንቀሳቅል ሳይነቃ Header ትእዛዝን መጠቀም ስህተት ሊያመጣ ይችላል። ለመፍትሄ የቅርብ ጊዜ ያክሉትን አዲስ መስመሮች በጊዜያዊነት አስወግዱ፣ የHostragons ሰርቨር ስህተት መዝገቦችን ይመልከቱ እና የhosting አካባቢዎ የሚስጥ ሞጁል እንደሚደገፍ ያረጋግጡ።
የፓስዎርድ ገፅ በድጋሜ ይመጣል
የተጠቃሚ ስምና ፓስዎርድ ትክክል ቢሆኑም ገፁ በድጋሜ ማቅረብ ከደግመ ይችላል። ይህ ከ .htpasswd መንገድ የተሳሳተ መዳረሻ፣ የፓስዎርድ ሃሽ ፎርማት በሰርቨር የማይደገፍ ወይም የፋይል ፍቃድ የተሳሳተ ምክንያት ሊሆን ይችላል። AuthUserFile ላይ አድስ ፍለጋ መንገድ ትክክል እንደሆነ ያረጋግጡ።
HTTPS መላኪያ የዘላቂ ዙር ይፈጥራል
በCDN ወይም proxy አዋቂ ስፍራ ላይ የሚገኙ ሳይቶች ሰርቨሩ ጥያቄን እንደ HTTP በውስጥ ሊያያዝ ይችላል፣ በዚህም ሁኔታ ወደ HTTPS የሚያስተላልፍ ዙር ሊፈጥር ይችላል። በዚህ በX-Forwarded-Proto ያሉ ማስታወቂያዎችን የሚቀናበሩ የተለየ ህጎች ያስፈልጋሉ። በCDN ፓነልዎ ውስጥ ያለው SSL ሞድ Full ወይም Full Strict ያሉ ተገቢ ደረጃዎች እንደሚመረጡ አሳሳቢ ነው።
ምስሎች ወይም CSS ፋይሎች አይከፈቱም
Hotlink, FilesMatch ወይም የደህንነት ማስታወቂያ ህጎች በተቀላቀሉ ሲጻፉ ትክክለኛ ስታቲክ ፋይሎች እንኳን ሊይዞቸው ይችላል። በብራውዘር የዲቨሎፕር መሳሪያዎች Network ቅርጸ ገፅ ውስጥ የተዘጋ ፋይል በየ HTTP ኮድ እንዴት እንደተገደለ ይመልከቱ።
WordPress ስርዓቶች ውስጥ .htaccess የደህንነት ጥበቃ
.htaccess ፋይል WordPress ስርዓቶች ውስጥ ለቆይታ አያያዘዎች አስፈላጊ ሚና ይኖረዋል። በዚህ ምክንያት WordPress በሚፈጥረው BEGIN WordPress እና END WordPress በሚለው ክፍሎች ውስጥ ያሉትን ህጎች በማንኛውም ሁኔታ አሳይሞ መቀየር ያልተመከረው ነው። የደህንነት ህጎችን በአብዛኛው በዚህ ቦታ ውስጥ ከላይ ወይም ከታች መጨመር የተቻለ ደህንነት ይሰጣል።
ለWordPress ሚስተካከው ቀላል የደህንነት ምርመራዎች እነዚህ ናቸው፦
- wp-admin ፋይሎች ላይ ተጨማሪ Basic Auth ጥበቃ መተግበር።
- wp-content/uploads ውስጥ PHP ፋይሎች እንዳይሰሩ መከላከል።
- xmlrpc.php አይጠቀሙም ከሆነ መድረሻውን መጨረሻ ያድርጉ።
- readme.html እና license ፋይሎች እንዳይታዩ መግባባት።
- HTTPS መሪ ማድረግን WordPress የሳይት አድራሻዎች ጋር ተዛማድነት እንዲኖረው ማድረግ።
የwp-admin ስርዓት ላይ WordPress የተጠቃሚ የይለፍ ቃል እና .htaccess የይለፍ ቃል ጥበቃ በአንድ ጊዜ መተግበር ድርሻዊ ደህንነት ይሰጣል። ነገር ግን AJAX የሚጠቀሙ አንዳንድ ተጨማሪዎች wp-admin/admin-ajax.php ፋይል ያስፈልጋቸዋል። ስለዚህ wp-admin ፋይል በሁሉም ዓይነት መዝጋት የአንዳንድ አገልግሎቶችን ሊያበላሽ ይችላል። ስለዚህ በቀጥታ ሳይት ላይ መሙከር አስፈላጊ ነው። ወርድፕሬስ ሆስቲንግ WordPress ፈጣን ማሳደግ
.htaccess ጥላቻ የሙያ ምክሮች
ከተሞክሮ ስርዓት አስተዳዳሪዎች በጣም የሚተኩበት ጉዳይ፣ በጥላቻና በቆሻሻነት መካከል ያለው ሚዛን ነው። አይገባም የሚለው አዋጅ በአጭር ጊዜ ምርጥ ይመስላል፣ ነገር ግን በረዘሙ ጊዜ የጥገና ክፍያን ማሳደግ ይችላል። ስለዚህ ሁሉንም የሚያደርጉትን አዋጅ፣ ዓላማ፣ የሚያካትቱትና የሙከራ ውጤት እንደተመዘገበ ያረጋግጡ።
- ከተጠናቀቁ ለውጦች በፊት ቀን የተያዘ ቅጂ ይዘው ያስቀምጡ: htaccess-2026-01-15.bak ያለው እንደሚሆን.
- ብዙ አዋጅ በአንድ .htaccess ፋይል አካባቢ መያዝ አይመከርም።
- 301 መሻገሪያዎች ቀዋሚ ስለሆኑ የአሳሽ እና የመፈለጊያ ማስታወሻዎችን ይቅርበት ያድርጉ።
- የእሱን ጥላቻ ራስጌዎች ካጨመሩበት በኋላ የአሳሽ ኮንሶል ስህተቶችን ይመረምሩ።
- የይለፍ ቃል የተጠበቁ አቅራቢዎች ውስጥ የተጋራ ደካማ ይለፍ ቃሎች ሳይጠቀሙ ለእያንዳንዱ ሰው ተጠቃሚ ያዘጋጁ።
- Test፣ staging እና ቅጂ ፋይሎችን ከመፈለጊያ ማሳወቂያ በፊት በserver ደረጃ ያግዙ።
ሌላ አስፈላጊ ነገር ደግሞ የጥላቻ አዋጅዎችን በተደጋጋሚ እንደሚያሳዩ ነው። ዛሬ የሚሰራው የintegration ነገር ነው በኋላ የሚወገድ፣ ነገር ግን ለእሱ በተለይ የተቀደመው መንገድ በ.htaccess ውስጥ ሊዘገብ ይችላል። ከሶስት ወር በአንድ ጊዜ አጭር የጥላቻ ምርመራ ማድረግ፣ ያለምንም የአዋጅ ፍቃድ ማስወገድና የድሮ መሻገሪያዎችን ማስተካከል ጥሩ ባህሪ ነው።
ውሎ: ትንሽ ፋይል፣ ትልቅ የደህንነት አቅራቢ
.htaccess ፋይል የመረጃ ማስታወቂያና የስርዓት ደህንነትን የሚያሳድጉ መተግበሪያዎች በትክክል ሲጠቀሙ፣ የድር ጣቢያዎን በጥቃት ላይ የመጀመሪያ መከላከያ መስመር ይያዙበታል። የዳይሬክቶሪዎችን በየይለፍ ቃል መጠበቅ፣ HTTPS አስፈላጊ ማድረግ፣ የዳይሬክቶሪ ዝርዝርን መዝጋት፣ ወደ ህላዊ ፋይሎች መድረስን መከልከልና የደህንነት ራስጌዎችን ማታደስ፤ ለአብዛኛው ድር ጣቢያ ተስማሚ፣ ሊመረመር የሚችሉና ፍትዋዊ የደህንነት እርምጃዎች ናቸው።
ነገር ግን .htaccess ደህንነት ብቻውን አንዳች አይበቃም። የሚታመን የሆስቲንግ መሰረት፣ ትኩስ ሶፍትዌር፣ SSL ሰርቲፍኬት፣ የተደጋጋሚ ባክአፕ እና ጠንካራ የይለፍ ቃል ፖሊሲ በአንድነት ሊያስተዳድሩ ይገባል። Hostragons ላይ የድር ጣቢያዎን ሲቆጥሩ SSL፣ hosting እና domain አስተዳደር ያሉ የደህንነት መስፈሪያዎችን በአንድ ፓኔል በቀላሉ ማስተዳደር ትችላላችሁ፤ በደህንነት የተሻሻለ መዋቅር ያስፈልጎዎት በግልጽ እርምጃዎች ማምጣት ይችላሉ። የድር ሆስቲንግ ጥቅሶች ዶማይን ግዢ SSL ሰርቲፊኬታት
ብዙውን ጊዜ የሚጠየቁ ጥያቄዎች
.htaccess ፋይል መፃደድ ፋይሎቹን በትክክል ይፃዳዋል?
አይደለም። ይህ ንግግር ብዙውን ጊዜ የድር ማውጫዎችን በመጠቀም ተጠቃሚ ስምና የይለፍ ቃል ማስተካከል ማለት ነው። Basic Auth መዳረሻን ይገድጃል፤ የውሂብ ቀያዣ ደህንነት ለማረጋገጥ SSL ከ HTTPS ጋር ይጠቀሙ።
.htpasswd ፋይልን public_html ውስጥ ማኖር ደህንነቱ ይታመናል?
አይመከርም። በጣም ደህንነት ያለው አስተዳደር .htpasswd ፋይሉን public_html ውስጥ ከሆነ በቀጥታ ከድር የማይደርስበት ቦታ ውስጥ ማኖር ነው። ይህ የሚሰሩ ትክክለኛ ያልሆነ ማዋቀር በተከሰተ ጊዜ ፋይሉ የሚታይ ዕድልን ይቀንሳል።
.htaccess ተለዋዋጭ ከደረሰኝ በኋላ 500 ስህተት ከተቀበልኩ ምን አደርግ?
የመጀመሪያው የተጨመረውን መስመር ይወግዱ ወይም ወደ ቅድመ ቅጂ ፋይል ይመለሱ። በኋላ የአገልጋይ የስህተት መዝገቦችን ይመልከቱ። ስህተቱ በአብዛኛው የአጽዋት ስህተት፣ የማይደገፍ ድርስ፣ ወይም የተተኮሰ አፓች ሞጁል ምክንያት ነው።
WordPress wp-admin ፎልደሩን .htaccess በመፃደድ መጠቀም የትክክለኛ ነው?
አዎ፣ ተጨማሪ የደህንነት ጥሪ ሊሰጥ ይችላል። ነገር ግን አንዳንድ እቃዎች admin-ajax.php እንደዚህ ያሉ ፋይሎችን ያስፈልጋሉ፣ ስለዚህ ከማስፈጸም በኋላ የመግቢያ፣ አስተያየት፣ ጋሪ፣ ክፍያና ፎርም ስራዎችን በሙሉ ማረጋገጥ ያስፈልጋል።
HTTPS የመላከት ማድረግ SEO ላይ ተጽናናይ ነው?
በትክክል የተደረገ 301 HTTPS የመላከት ማድረግ ተጽናናይ አይደለም፤ በተቃራኒው ደህንነትና የተስተናጋጅ URL መዋቅር ያስገኛል። አስፈላጊው የመላከት ሰንሰለት እንዳይፈጠርና ሁሉንም … ውስጥ ያሉ አድራሻዎችን ከመጨረሻ HTTPS አድራሻዎች ጋር ማስተካከል ነው።