it-swarm.asia

الأمن و. htaccess

منذ حوالي شهر ، بدأت في تشغيل مدونة WordPress على خادم مستضاف يتعلق بهواية. لذلك ، أنا جديد على هذا في الوقت الحاضر.

نظرًا لأنني قلق بشأن الأمان ، فإن أحد الأشياء التي قمت بها هو تثبيت المكون الإضافي WP فحص الأمان. وفقًا لنتائج المكوِّن الإضافي ، يقوم موقعي بفحص ما عدا أن أحصل على هذه النتائج كعلم أحمر:

الملف .htaccess غير موجود في wp-admin/(لقد كنت موجودًا وهو غير موجود)

حسنًا ، لقد أجريت بحثًا كبيرًا حول المشكلة وأجد الكثير من المعلومات حول .htaccess. لقد مررت بـ Hardening WordPress على موقع WordPress.org ، وما إلى ذلك ، كما واجهت هذه المقالة: http://digwp.com/2010/07/wordpress-security-lockdown/

على أي حال ، لقد حصلت في حيرة من أمري مع عدد كبير من المعلومات المتاحة.

ما الذي يجب أن يحتوي عليه ملف. htaccess في wp-admin؟ لقد قرأت أن ملف htaccess هذا يجب أن يحمي دليل wp-admin وكلمة المرور قرأت أيضًا أن هذا يمكن تسبب مشاكل في الوظائف.

مساعدة في هذا هو موضع تقدير كبير.

شكر. -wdypdx22

تحديث حسنًا ، لذلك أنا لم أسجّل الدخول إلى مدونتي وأستخدم جهاز كمبيوتر مختلفًا عن المعتاد. أقوم بإدخال عنوان url www.mysite.com/wordpress/wp-admin/ وهناك إعادة توجيه لتسجيل الدخول. إذا كان هذا ما يحدث ، فهل هناك حاجة إلى ملف htaccess حتى في دليل wp-admin؟

8
wdypdx22

UPDATE: عندما نشرت جوابي لأول مرة ، فاتني جوهر السؤال ؛ كانت إجابتي حول .htaccess security بشكل عام والمدرجة الآن أسفل السطر المزدوج (انظر لأسفل إذا كان يهمك.) لسوء الحظ ، ليس لدي تجربة محددة مع تأمين /wp-admin/ باستخدام .htaccess لذلك سأقوم ببساطة بإدراج الموردين اللذين سأتابعهما متى وإذا كنت في حاجة إليها:

يوصي الأول بما يلي (وهنا بعض النقاش حوله .)

<Files ~ "\.(php)$">
AuthUserFile /etc/httpd/htpasswd
AuthType Basic
AuthName "restricted"
Order Deny,Allow
Deny from all
Require valid-user
Satisfy any
</Files>

يحتوي الأخير على الكثير من المعلومات ، خاصة في التعليقات ، لكن من المسلم به أن توفير قائمة بقراءتها ليس هو الحل الذي كنت تبحث عنه.

آسف لم أستطع أن أكون أكثر فائدة في هذا.

========================================

عادةً ما يحتوي WordPress على ما يلي فقط والذي تمت معالجته بمعالجة الرابط الثابت ولا يرتبط بالأمان:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

لقد عثرت مؤخرًا على الفسفور الابيض htacess Control البرنامج المساعد الذي يدير الكثير من .htaccess لك وأحببته كثيرًا. بعد التغيير والتبديل ، أضافت الخيارات التالية:

# WPhtC: Disable ServerSignature on generated error pages
ServerSignature Off

# WPhtC: Disable directory browsing
Options All -Indexes

# WPhtC: Protect WP-config.php
<files wp-config.php>
order allow,deny
deny from all
</files>

# WPhtC: Protect .htaccess file
<files ~ "^.*\.([Hh][Tt][Aa])">
order allow,deny
deny from all
</files>

أضاف أيضًا هذه الخيارات التي تتعلق بالأداء بدلاً من الأمان:

# WPhtC: Setting mod_gzip
<ifModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>

# WPhtC: Setting mod_deflate
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent env=!dont-vary
</IfModule>

إلى جانب هذا المكون ، هناك بعض الإضافات التي لم أجربها ولكنها تركز على الأمان والتي تتفاعل مع .htaccess - يمكنك تجربتها مع بعضها فقط لمعرفة ما يفعلونه بملف .htaccess:

علاوة على ذلك ، إذا كنت تريد معرفة مورد الخبراء (IMO) # 1 على أمان Apache المتعلق بـ WordPress ، يمكنك العثور عليه على AskApache.com ؛ المتأنق هو المتشددين! لن تحل مدونته مشكلة " الكثير من المعلومات " ، لكن على الأقل يمكنك مشاهدتها كمورد موثوق به!

فيما يلي بعض الأمثلة (على الرغم من أنها ليست كلها مرتبطة مباشرة بـ WordPress ، فهي جميعًا قابلة للتطبيق):

على أي حال ، نأمل أن يساعد هذا.

8
MikeSchinkel

الفكرة الكامنة وراء ذلك ، إذا كان لديك ملفات خنق معلقة من الترقيات السابقة أو لهجمات اليوم صفر ، يمكن اختراق نظامك. كما أن تأمين wp-admin بواسطة طريقة أخرى سيساعد في مواجهة هجمات القوة الغاشمة.

فكرة واحدة) إذا كنت تقوم فقط بتحرير الموقع ، يمكنك تقييد الوصول إلى المجلد عن طريق بروتوكول الإنترنت عن طريق القيام بشيء من هذا القبيل

<Files *>
Order deny,allow
Deny from All
Allow from 1.2.3.4
</Files>

لجعله أكثر تحملاً قليلاً لأنظمة IP الديناميكية ؛ يجب أن تكون قادرًا على السماح من فئة فرعية ، لذلك إذا كنت تجمع IP دائمًا من 1.2.3.128 - 1.2.3.255 ، فيمكنك فعل شيء مثل 1.2.3.128/25

فكرة أخرى) تتطلب HTTPS ، إعطاء إذن مرفوض إذا حاولوا ذلك عبر http. ولكن لا تعيد توجيههم إلى https. يمكنك استخدام شهادة موقعة ذاتيًا أو شهادة من CA Cert للحصول عليها دون شراء واحدة.

4
Ryan Gibbons

أقوم دائمًا بتضمين ملف. htaccess في wp-admin ، حتى لو لم أضع أي شيء فيه ، حيث إنه ينفي ملف الدليل الجذر. يستخدم بعض الأشخاص ملف htaccess الخاص بـ wp-admin لإخفاء الدليل بالكامل من عنوان IP ما عدا عنوان IP واحد ، بينما يستخدمه الآخرون لحماية كلمة المرور للدليل.

ومع ذلك ، ستعمل كلمة المرور التي تحمي قسم المسؤول باستخدام .htaccess على تعطيل اتصالات ajax ، لأنها تتفاعل مع wp-admin/admin-ajax.php.

عمومًا ، لا أرى سببًا كبيرًا لإضافة أي شيء إلى ملف .htaccess الخاص بالمسؤول ما لم تكن بجنون العظمة. الهجمات عادة ما تستهدف محتوى الفسفور الابيض على أي حال.

0
John P Bloch