امنیت وب سایت با htaccess - قسمت اول

htaccess چیست
5.0/5 rating (2 votes)

htaccess یک فایل پیکربندی برای وب سایت هایی است که از سرور آپاچی و زبان برنامه نویسی PHP استفاده می کنند. وقتی این فایل htaccess در یکی از پوشه های وبسایت قرار می گیرد، وب سرور آپاچی، دستورات این فایل را بررسی می کند و طبق این دستورات، سایت را پیکربندی می کند. در این فایل می توان توابع و ویژگی های سرور آپاچی را فعال یا غیر فعال کرد.

فایل htaccess یک فایل ساده اسکی ( ASCII) است که می توانید آن را به وسیله نرم افزارهای متنی ساده نظیر Notepad و یا SimpleText ایجاد و ویرایش کنید. دقت داشته باشید که نام این فایل htaccess. است و هیچ عنوان، پیشوند و یا پسوندی ندارد. برای ایجاد این فایل، کافیست یک فایل text باز کنید و زمان ذخیره سازی نام آن را به htaccess. تغییر دهید.

توجه داشته باشید که روی ویندوز نمی توانید این فایل را بسازید زیرا در ویندوز حتما باید نامی برای فایل انتخاب کنید. از این جهت، باید فایل خود را در سرور ایجادکنید، سپس آن را دانلود کنید. برای دانلود هم می توانید از نرم افزار های FTP مثل AbsoluteFTP یا CuteFTP استفاده کنید.

اما نکات مهمی که باید در هنگام ساختن این فایل بدانید :

  • فایل htaccess را می بایست به صورت ASCII آپلود کرده و مجوز دسترسی به فایل را بر روی 644 یا rw-r–r  تنظیم کنید.
  • فایل htaccess می تواند در هر پوشه ای قرار بگیرد. اگر آن را در روت root وب سایت آپلود کنید، دستورات آن در کل وب سایت اعمال می شود. اگر می خواهید یک سری دستورات و دسترسی های خاص به پوشه ای اعمال کنید، بهتر است فایل را در همان پوشه آپلود کنید. دستورات به آن پوشه و پوشه های داخلی اعمال می شود.
  • هر دستور در فایل htaccess در یک خط تایپ می شود و در انتهای هر دستور باید Enter بزنید.
  • نحوه پیکر بندی این فایل، مانند فایل اصلی سرور httpd.conf است. به همین دلیل تصمیمات بر اساس شرایط اخذ می شود. البته تمامی امکانات httpd.conf را شامل نمی شود.

در مواردی که از سرور به صورت اشتراکی و Share استفاده می شود، توصیه می کنیم حتما از این فایل استفاده کنید  زیرا هر ذباید پیکربندی خودش را داشته باشد. و امنیت سایت با این فایل تا حدودی قابل کنترل است.

اگر از وب سرور آپاچی برای وب سایت خود ا ستفاده می کنید، دیگر نیازی نیست برای هر مشکل جزئی و کوچک، با شرکت هاستینگ خود تماس بگیرید، با یادگیری قابلیتهای مهم فایل htaccess ، میتوانید کنترل کامل وبسایت خود را برعهده بگیرید. همینطور روی بحث امنیت سایت می توانید کنترل داشته باشید.

در میان ابزارهای متعدد مدیریت و امنیت وب سایت، Htaccess یکی از مهم ترین آن هاست. و البته ساده ترین، زیرا با یک سری دستورات ساده می توانید:

  • دسترسی به بخش های وب سایت خود را تغییر دهید.
  • نحوه ی آدرس دهی به بخش های وب سایت ها را عوض کنید.
  • و آی پی های مشکوک را محدود و بلاک کنید.
  • و ....

هر فردی که وب سایت خود را بر روی Apache قرار داده است، حتما به آموزش کامل و جامع در مورد کار با Htaccess نیاز پیدا کرده است.

این فایل توانایی کار با زبان های برنامه نویسی تحت وب از جمله PHP ، Ruby و .. را دارد.

اما سوال اینجاست، چرا از Htaccess استفاده کنیم؟

این یک سوال مهم است که قبل از شروع کار باید به آن پاسخ داد. ممکن است شما بعد از دیدن این سوال سریعا بپرسید اصلا یک فایل Htaccess چیست و چه می کند؟

در پاسخ به این سوال باید بگویم این فایل دارای تنظیمات مهمی است که توسط وب سرور Apache مورد استفاده قرار می گیرد و به وب سرور می گوید دستورات موجود در Header های Http را هندل کند.

بزرگترین دلیل استفاده از این فایل بحث امنیت وب سایت است؛ شما می توانید با استفاده از فایل Htaccess روی فایل های خود پسورد بگذارید، دسترسی به آن ها را محدود کنید، کاربر را به صفحات 404 بفرستید و…

در شروع کار ایجاد و دسترسی به فایل Htaccess را آموزش می دهیم. مراحل زیر را به ترتیب انجام دهید.

ابتدا از طریق آدرس زیر وارد سی پنل وب سایت خود شوید

http://example.com/cpanel

روی فایل منیجر File Manager کلیک کنید و وارد فولدر public_html وب سایت شوید، زیرا محل قرارگیری فایل های وب سایت در این دایركتوری می باشد.

گزینه New File را انتخاب کنید و یک فایل با نام htaccess. ایجاد کنید. احتمالا بعد از ایجاد این فایل

نمیتوانید فایل را در لیست ببینید. زیرا در سیستم های لینوکسی نقطه قبل از اسم باعث مخفی شدن فایل می شود. برای رفع این مشکل، گزینه  Setting در بخش فایل منیجر را بزنید. در پنجره ای که باز می شود گزینه ی Show Hidden Files (dotfiles) را تیک بزنید.

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

 

<Files .htaccess>
order allow,deny
deny from all
</Files>
prevent viewing of a specific file
<Files secretfile.jpg>
order allow,deny
10 deny from all
</Files>
multiple file types
<FilesMatch ".(htaccess|htpasswd|ini|phps|fla|psd|log|sh "$>Order Allow,Deny
Deny from all
</FilesMatch>

یکی از کارهای مهمی که در فایل htaccess می توانیم انجام دهیم انتخاب Default Charset هست.

با این کار زبان و Charset پیش فرض سایت را برای مرورگر تعیین می کنیم. این کار روی سئو سایت هم تاثیر خوبی دارد.

#pass the default character set
AddDefaultCharset utf-8

در آموزش های بعدی بخش های دیگر دستورات و نحوه استفاده آنها را آموزش خواهیم داد.

قسمت دوم این مقاله را از این لینک می توانید مطالعه کنید.