جوملا: راه‌کارهای افزایش امنیت وب‌سایت

1kviews

۱- محافظت از طریق .htaccess

کلیه فرآیندهای جوملا براساس ۲ فایل index.php و index2.php انجام می‌شود به همین منظور شما می‌توانید با استفاده از کدهای زیر از اجرای سایر فایل‌های PHP که ممکن است در میان فایل‌های شما آپلود شده باشند و در درون آنها backdoor وجود داشته باشد خودداری نمایید.
کد:

<Filesmatch ".(php)$">
order deny,allow
deny from all
Filesmatch>

<Filesmatch "^index.php">
order allow,deny
allow from all
Filesmatch>

<Filesmatch "^index2.php">
order deny,allow
allow from all
Filesmatch>

البته ممکن است یک هکر دانا یک backdoor را با نام index.php در یکی از پوشه‌های جوملا شما آپلود نماید به همین منظور از کد زیر در همه زیر پوشه‌ها استفاده نمایید:

<Files ~ ".(php)$">
Deny from all
Files>

در پوشه مدیریت نیاز است شما از کد زیر استفاده نمایید:

<Files ~ ".(php)$">
Deny from all
<Files

 

۲- محافظت از طریق FTP

می‌دانید که مشخصات FTP هاست شما در درون فایل configuration.php برای استفاده جوملا وجود دارد و در صورت دست یافتن هکر به این اطلاعات ، هکر می‌تواند به سادگی سایت شما را هک نماید.
به همین منظور شما می توانید دسترسی به FTP را به IP خود سرور و مثلا IP خودتان محدود نمایید.
مثال زیر برای proftpd می‌باشد و این امر برای سایر سرویس دهنده‌های FTP کمی متفاوت است.
در فایل /etc/proftpd.conf خط زیر را اضافه نمایید.

<Limit LOGIN>
Order allow,deny
Allow from 11.22.33.44
Allow from 127.0.0.1
Deny from all
Limit>

IP شماره ۱۱٫۲۲٫۳۳٫۴۴ مثلا متعلقه به کامپیوتر شما است و IP شماره ۱۲۷٫۰٫۰٫۱ متعلق به سرور است تا بتواند از FTP استفاده نماید

۳- بلوک کردن IP‌ها

معمولا اکثر سایت‌ها نیازی به مراجعه کاربران از کشورهای هکرخیز مانند چین و روسیه ندارند به همین منظور می‌توانید با استفاده از سایت زیر ، بازه IP‌های کشور مورد نظر را یافته و مسدود نمایید:

<countryipblocks.net/country-blocks/select-formats>
/sbin/iptables -I INPUT -s 88.147.196.0/88.147.253.255 -j DROP

۴- فایل‌ها و پوشه‌ها در جوملا

اکنون زمان محافظت از فایل‌ها و پوشه‌ها است. مالک فایل‌ها و پوشه‌ها کاربر FTP و دسترسی پوشه‌ها ۷۵۵ و دسترسی فایل‌ها ۶۴۴ می‌باشد به همین منظور دستور زیر را اجرا نمایید.

Navigate to joomla root chown -R user:group ./ chmod -R 0644 ./ find . -type d -exec chmod 755 {} ;

با این کار مالک فایل‌های شما تغییر کرده و دیگر PHP قادر به نوشتن بر روی فایل‌ها نیست.

البته فراموش نکنید که باید به صورت دستی دسترسی cache و backupsرا ۷۷۷ نمایید.

نکته: این کار را از طریق کنترل پنل و FTP ‌هم میتوانید به راحتی انجام دهید.

۵- جوملا خود را به روز نگه دارید

شما همواره باید جوملا خود را به‌روز نگه دارید و پس از انتشار هر نسخه جدید، سریعا جوملا خود را به نسخه جدیدتر ارتقا دهید.

۶- محافطت از پوشه administrator در جوملا

یکی از راه‌های ساده جهت محافظت از جوملا گذاشتن رمزعبور بر روی پوشه Administrator است با این کار در صورتی که هکر، نام کاربری و رمزعبور شما را هم داشته باشد قادر به تخریب زیادی در سایت شما نخواهد بود.

۷- کاهش دسترسی کاربر admin در جوملا

کاربر admin که مدیرکل جوملا می‌باشد همواره یکی از اهداف حمله هکرها است. به همین منظور یک کاربر مدیر کل دیگر ایجاد نموده و سپس با آن وارد بخش مدیریت شده و دسترسی کاربر admin را به “کاربر ثبت شده” تغییر دهید.

۸- نصب پلاگین jSecure Authentication

نصب این پلاگین باعث ایجاد امنیت بیشتر در مسیر ورودی به مدیریت جوملای شما می‌شود.

۹- تغییر پیشوند جداول دیتابیس

از دیتابیس خود بکاپ بگیرید.

وارد مدیریت جوملا شوید.

در تنظیمات کلی وارد بخش دیتابیس شوید.

پیشوند جداول را به مثلا به rthf_ تغییر داده و سپس ذخیره نمایید.

وارد phpMyAdmin شوید.

وارد export شده و از دیتابیس خود خروجی ساده بگیرید.

کل خروجی ایجاد شده را کپی نمایید.

در phpMyAdmin کلیه جدول‌ها را حذف نمایید.

در notepad عبارت jos_ را مثلا با rthf_ جایگزین نمایید.

وارد تب SQL شده و متن را از notapad کپی و سپس بر روی دکمه Go کلیک نمایید.

نتیجه‌گیری

با انجام کارهای بالا سایت شما بیش از ۹۹٫۹۹% از احتمال هک شدن مصون می‌گردد.

راه‌کارهای افزایش امنیت در وردپرس

537views

۱- همیشه بروز باشید!

یکی از اصلی ترین نکات، بروزرسانی هسته وردپرس است. همیشه وردپرس خود را بروز نگهدارید.

۲- نام کاربری مدیر را admin انتخاب نکنید!

سعی کنید نام کاربری مدیر را چیزی انتخاب کنید که به راحتی قابل حدس زدن نباشد. مواردی مثل admin – modir – administrator و… را انتخاب نکنید.

۳- رمز عبور مناسب انتخاب کنید.

سعی کنید در رمز عبور خود از حروف نامتعارف و کاراکترهای جانبی استفاده کنید. حدالامکان از password generator های قدرتمند برای این‌کار استفاده ببرید.

۴- سطح دسترسی پوشه های زیر را روی ۷۵۵ (user account) قرار دهید:

/wp-admin/
/wp-includes/
/wp-content/
/wp-content/themes/
/wp-content/plugins/

و سطح دسترسی فایل‌های داخل آنها بر روی ۶۴۴ قرار گیرد.

۵- امنیت پوشه wp-includes را به کمک قرار دادن کدهای زیر (در htaccess) بالاتر ببرید:

 

# Block the include-only files.
RewriteEngineOn
RewriteBase
RewriteRule^wp-admin/includes/-[F,L]
RewriteRule!^wp-includes/-[S=3]
RewriteRule^wp-includes/[^/]+\.php$ -[F,L]
RewriteRule^wp-includes/js/tinymce/langs/.+\.php -[F,L]
RewriteRule^wp-includes/theme-compat/-[F,L]

۶- امنیت فایل wp-config.php را به کمک قرار دادن کدهای زیر (در htaccess) بالاتر ببرید:

< fileswp-config.php
order allow,deny
deny from all >

۷- در پایگاه داده، پیشوند (_prefix) پیشفرض (wp_) را تغییر دهید.

۸- بصورت مرتب از پایگاه داده خود پشتیبان بگیرید.

اسکریپت powershell

اسکریپت Powershell برای فشرده‌سازی فایل‌های VHDX

670views

اسکریپت powershell شامل یک تابع به نام Compact-VHDX است که می‌توان با استفاده از آن سایز دیسک‌های VHDX را که به صورت Dynamic تعریف شده‌اند و بیشتر از فضای واقعی درون آن‌ها را اشغال کرده‌اند را کاهش داد.

فایل VHDX باید حتما در ابتدا غیرفعال یا dismount شود تا اسکریپت powershell بتواند به آن دسترسی داشته باشد.

برای استفاده فایل زیر را از گالری Technet دریافت نمائید و مطابق راهنمای فراهم شده به شرح ذیل از آن استفاده نمائید.

https://gallery.technet.microsoft.com/scriptcenter/Powershell-Script-to-ae5c00ba/file/126931/1/Compact-VHDX.rar

دریافت راهنما:

Help Compact-VHDX -Full

مثال:

Compact-VHDX -VHDXPath D:\Dynamic1.vhdx -SDelete .\sdelete.exe

راهنما:

NAME
Compact-VHDX

SYNOPSIS
Function to remove unused space in Dynamic VHDX file

SYNTAX
Compact-VHDX [-VHDXPath] [-SDelete] [[-LogFile] ] [-WhatIf] [-Confirm] []

DESCRIPTION
Function is designed to work on Dynamic VHDX files – not Fixed.

To reduce size of Fixed VHDX file convert it to dynamic first then use this function.
For example:
Dismount-VHD -DiskNumber 13 -Confirm:$false
Convert-VHD -Path ‘d:\Fixed1.vhdx’ -DestinationPath ‘d:\Dynamic2.vhdx’ -VHDType Dynamic
Where ’13’ is the disk number as shown in Disk Management/Computer Management.

Before using this script, empty space on the VHDX disk first by deleting un-needed and
temporary files, and emptying the recycle bin

PARAMETERS
-VHDXPath
Path to VHDX file

Required? true
Position? 1
Default value
Accept pipeline input? true (ByValue, ByPropertyName)
Accept wildcard characters? false

-SDelete
Path to the SDelete.exe tool.
The tool is bundled with this script for ease of use. It can be downloaded from
http://technet.microsoft.com/en-us/sysinternals/bb897443.aspx

Required? true
Position? 2
Default value .\SDelete.exe
Accept pipeline input? false
Accept wildcard characters? false

-LogFile

Required? false
Position? 3
Default value “.\Compact-VHDX-$(Get-Date -format yyyyMMdd_hhmmsstt).txt”
Accept pipeline input? false
Accept wildcard characters? false

-WhatIf []

Required? false
Position? named
Default value
Accept pipeline input? false
Accept wildcard characters? false

-Confirm []

Required? false
Position? named
Default value
Accept pipeline input? false
Accept wildcard characters? false

This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

NOTES
Function by Sam Boutros
v1.0 – 10/12/2014

————————– EXAMPLE 1 ————————–

C:\ZAGRIO.COM\PS>Compact-VHDX -VHDXPath D:\Dynamic1.vhdx -SDelete .\sdelete.exe

RELATED LINKS
https://superwidgets.wordpress.com/category/powershell/
https://www.zagrio.com/

نحوه ساختن شناسه کاربری در NIC.ir

1.1kviews

مطابق قوانین فیزیک نظری NIC.ir (مرکز ثبت دامنه های ملی) هر دامنه باید تحت عنوان صاحب امتیاز آن ثبت شود.

از این رو در مراحل ثبت این نوع دامنه از طریق میزبانی زاگریو از شما شناسه (Handle) صاحب امتیاز آن در این مرکز درخواست می‌شود.

به منظور ثبت این نوع دامنه ابتدا لازم است با مراجعه به لینک زیر ابتدا نسبت به ساخت شناسه کاربری اقدام و سپس آن شناسه که ساختار آن بصورت XXXXX-irnic است را وارد نمائید.

https://www.nic.ir/Create_New_Handle

این شناسه کاربری بسته به نوع آن (حقیقی، حقوقی، سازمانی، آموزشی و محدود) در زمان ثبت قابل انتخاب است.

چرا موفق به ثبت دامنه یا تمدید دامنه ir نمی‌شوم؟

933views

شما باید این اجازه را به میزبانی زاگریو بدهید تا از طرف شما نسبت به ثبت دامنه و یا تمدید دامنه با نام شما اقدام نماید.

 از این رو لازم است به سامانه NIC.ir وارد شوید، سپس مراحل ذیل را ادامه دهید:

 ۱- از منوی شناسه روی مدیریت رابطه‌های مجاز کلیک کنید و همانند تصویر در قسمت‌های مربوطه گزینه خودم و تیک شناسه‌های آشنا و نمایندگان را انتخاب و دکمه اعمال را بزنید.

nic

۲- سپس از منوی شناسه بر روی مدیریت شناسه‌های آشنا کلیک کنید و در قسمت مربوطه مقادیر زیر را نمائید و دکمه اعمال را بزنید.

 

 با این کار شما به میزبانی زاگریو و شرکای تجاری آن که به واسطه آنها عملیات پرداخت و تمدید را انجام می‌دهد اجازه می‌دهید که شما را به عنوان صاحب امتیاز یک دامنه معرفی کند.

domain terms

شرایط دامنه‌های بین‌المللی

767views

دامنه‌های بین‌المللی ثبت شده در میزبانی زاگریو با همکاری مرکز ثبت WebNIC ثبت و مدیریت می‌شوند.

هر شرکت ثبت‌کننده تابع قوانین بین‌المللی و بعضا قوانین خودشان در خصوص مدیریت، تایید، انتقال و ثبت دامنه‌ها شرایط و ضوابطی را اعمال می‌نمایند.

همچنین این قوانین بر اساس پسوند دامنه در خصوص مدت زمان، شرایط تمدید، ثبت، حذف و غیره متفاوت است.

مشتریان گرامی موظف به بررسی و مطالعه شرایط و قوانین مربوط به پسوند دامنه‌های خود هستند، از این رو زاگریو به صورت مستقیم این قوانین را در ذیل این مقاله درج می‌نماید.

شایان دکر است این قوانین در حوزه اختیارات زاگریو نبوده و احتمال اعمال تغییرات در آن در هر لحظه وجود دارد.

قوانین و شرایط کلی دامنه ها
ثبت دامنه
بازیابی دامنه
تمدید دامنه
حذف دامنه
انتقال دامنه
انتقال نمایندگان
مدیریت دامنه
تایید دامنه

در صورت داشتن هر گونه پرسش در زمینه دامنه‌های بین المللی در تماس با ما تردید نفرمائید.

خطای Internal Server Error 500 چیست؟

1.8kviews

در صورتیکه روی سایت خود با خطای ۵۰۰ Internal Server Error مواجه شدید، لطفا موارد زیر را بررسی نمایید:

۱- بررسی کنید که برنامه شما با دسترسی حداکثر ۷۵۵ درحال اجرا باشد. چنانچه از دسترسی ۷۷۷ استفاده می‌کند، موجب بروز خطای ۵۰۰ (خطای اینترنال سرور) را می‌دهد. معمولا فایل‌های اسکریپت را با دسترسی ۶۴۴ استفاده می‌کنند.

۲- بررسی کنید که شاخه‌ای برنامه در آن اجرا می‌شود و همچنین کلیه شاخه‌هایی که به این اسکریپت مربوط می‌شود، دسترسی ۷۵۵ داشته باشد.

۳- بررسی کنید که مالکیت فایل با خودتان باشد! احتمال دارد مالیک فایل‌های شما به شکل nobody باشد که در این صورت با ارسال مسیر اسکرپیت به پشتبانی، مالکیت فایل‌ها به کاربری شما تغییر خواهد کرد.

۴- htaccess خود را چک کنید. چنان‌چه در آن تغییراتی برای php_value صورت گرفته باید از این فایل حذف گردد (این تغییرات باید در فایل php.ini اعمال گردد)

۵- چنان‌چه به نتیجه‌ای نرسیدید، برای بررسی بیشتر اطلاعات ورود به CPanel خود را به پشتیبانی ارسال نمایید .

چگونه از کلیه اطلاعات خود نسخه پشتیبان تهیه کنم؟

667views

با تهیه نسخه پشتیبان به روش زیر شما از تمامی اطلاعات خود شامل بانک‌های اطلاعاتی، فایل‌های، تنظیمات حساب کاربری، تنظیمات ایمیل‌ها، محتوای ایمیل‌ها، لاگ‌های دسترسی و … یک بک‌آپ خواهید داشت.

وارد حساب کاربری خود در cPanel شوید.

روی Backup Wizard کلیک کنید.

مراحل را به ترتیب طی کنید، پس از اتمام نسخه پشتیبان سیستم به صورت خودکار یک ایمیل حاوی نتیجه آن برای شما ارسال خواهد نمود.

توجه داشته باشید که نسخه پشتیبان شما بر روی سرور ذخیره شده و برای امنیت بیشتر پیشنهاد می‌شود این فایل را که در مسیر /home/YOURUSERNAME/ قرار دارد را دانلود نمائید.

چگونه ورژن PHP هاست خود را تغییر دهم؟

5.9kviews

به حساب کاربری cPanel خود وارد شوید و بر روی گزینه Select PHP Version در قسمت Software کلیک کنید.

select-php1

سپس ورژن مورد نظر خود را انتخاب و روی گزینه Set as current کلیک کنید.

select-php2

بعد از انتخاب ورژن PHP می‌توانید تنظیمات را به دلخواه انتخاب کنید و بر روی Save کلیک کنید یا با کلیک بر روی دکمه Use Defaults تنظیمات پیش‌فرض را انتخاب نمائید.

select-php3