برچسب: فایروال

نحوه باز کردن پورت در فایروال ویندوز سرور

برای باز کردن پورت در فایروال ویندوز ابتدا وارد محیط remote سرور خود شوید و از منوی Start در قسمت search programs and files کلمه “windows firewall with advanced security” را تایپ کنید

inbound rules : پورت های ورودی سرور هستند. به عنوان مثال شما زمانی که روی سرور خود وب سرور IIS نصب می کنید برای باز شدن سایت ها توسط client ها لازم است پورت ۸۰ روی سرور شما باز باشد. تمامی پورت های که سایرین از آن برای اتصال به سرور شما استفاده می کنند در این قسمت تنظیم می شوند.

outbound rules : پورت های خروجی سرور هستند. این یعنی سرور شما بتواند به چه پورت هایی از سایر سرور ها وصل شود. به عنوان مثال شما یک اسکریپت روی سرور اجرا کرده اید تا به یک سرور دیگر با پورت مشخصی وصل شود برای اینکار لازم است ابتدا پورت مورد نظر شما در این قسمت باز شود.

نکته امنیتی : در سرور پورت های اضافی یا همه پورت ها را باز نکنید . هکر ها می توانند با استفاده از این به سرور شما نفوذ کنند. حتی در صورتی که پورت های inbund شما محدود شده باشد آنها می توانند در صورتی که پورت های خروجی شما باز باشد از انها برای دسترسی گرفتن استفاده کنند.

در این مطلب ما قصد داریم پورت ۸۰ را روی ورودی سرور باز کنیم

مانند تصویر زیر روی گزینه  inbound rules کلیک می کنیم

در این قسمت لیست rules ها یا قوانین موجود نمایش داده می شود. rule های که فعال است با علامت  تیک سبز رنگ و rule های غیر فعال با علامت تیک خاکستری نمایش داده شده است. همچنین خلاصه اطلاعات rulee در این صفحه نمایش داده می شود.

برای اضافه کردن یک rule جدید مانند تصویر زیر از قسمت actions روی گزینه New Rule… کلیک می کنیم

 

سپس روی گزینه port کلیک کنید

در قسمت Does this rule apply to TCP or UDP نوع پروتل را انتخاب کنید. در اینجا با توجه به اینکه قصد داریم پورت ۸۰ را باز کنیم روی tcp کلیک می کنیم. در قسمت does this rule apply to all local ports or specific local ports روی گزینه specific local ports کلیک می کنیم.

توجه : در صورتی که روی گزینه all local ports کلیک شود تمام پورت های ورودی tcp باز می شود.

شما می توانید پورت ها را در این قسمت به صورت های زیر بنویسید :


 

در صورتی که بین ۲ پورت از – استفاده شود در این صورت تمام پورت های رنج باز می شود.

مانند تصویر زیر روی گزینه allow the conection کلیک کنید.

 

در صورتی که تمایل دارید پورت بسته شود روی گزینه block the conection کلیک کنید. توجه داشته باشید به عنوان مثال این مورد  زمانی کاربرد دارد که شما تعداد زیادی پورت را روی سرور باز کرده باشید اما لازم است یک پورت خاص روی سرور بسته شود.

سپس profile را انتخاب کنید.

سپس در قسمت Name نام rule را بنویسید به عنوان مثال http80 و در قسمت description توضیح آن را rule را می توانید بنویسید.

سپس روی گزینه finish کلیک کنید تا rule فعال شود.

 


لینک به آموزش


قرار دادن آی پی در لیست سفید CSF برای یک مدت مشخص

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

که TTL به ثانیه می باشد و port نیز که شماره پورت هست و direction مسیر in یا outbound هست و comment نیز برای درج پیام هست .
البته این دستور به صورت زیر نیز خلاصه نویسی می توان کرد ولی به صورت پیشفرض روی ۳۶۰۰ ثانیه می شود


لینک به آموزش


نحوه بلاک کردن آی پی آدرس در CSF ازخط فرمان لینوکس

در صورتیکه به هر دلیلی از داخل کنترل پنل نتوانستید لاگین کنید و آی پی را بلاک نمایید برای بلاک آی پی ( اضافه کردن به csf.deny ) دستور زیر را اجرا کنید ( آی پی مد نظرتان را بازنویسی کنید )
دستور -d به این منظور تعریف شده است .


لینک به آموزش


باز کردن پورت در فایروال لینوکس

اکثر ویرایش ها و ورژن های مختلف لینوکس به صورت پیش فرض از فایروال IPTABLES استفاده میکنند.این فایروال قدرتمنمد در حالت عادی اغلب پورت های لینوکس را در سرور مجازی و سرور اختصاصی بسته نگه میدارد…اگر شما قصد دارید سرویس و برنامه ای بر روی لینوکس سرور خود نصب کنید ، ابتدا باید پورت های مورد نیاز این برنامه را در فایروال IPTABLESS و جدل آی پی های لینوکس باز کنید

برای مثال اگر کنترل پنل وب هاستینگ نصب میکنید ، برای دسترسی به این کنترل پنل باید پورت هایی که کنترل پنل با آن کار میکند را باز کنید.مثلا در کنترل پنل کلوکسو این پورت ۷۷۷۷ و ۷۷۷۸ و در کنترل پنل دایرکت ادمین این پورت ۲۲۲۲ می باشد

در مثال زیر با اجرای این دستورات در محیط SSH لینوکس ، پورت ۷۷۷۸ را که متعلق به کنترل پلنل کلوکسو است را باز میکنیم :

برای راحت تر شدن کار میتوانید به صورت دستی و با ادیتور های لینوکس مانند vi , nano و … فایل iptables را ویرایش کرده و به صورت دستی آی پی و پورت های مورد نظر را برای باز کردن پورت وارد کنید

فایل iptables در این مسیر ذخیره میگردد

با دستور nano ابتدا آن را باز میکنیم

بعد از اضافه کردن آی پی و پورت های مورد نظر با کلید های ترکیبی Crtl + X  فایل را ذخیره میکنیم .

در پایان سرویس فایروال لینوکس جدول آی پی ها یا iptabels باید مجددا راه اندازی شود.برای ریستارت کردن فایروال iptables از دستور زیر استفاده کنید :

پورت مورد نظر شما باز و آماده استفاده شد.


لینک به آموزش


پیغام Internal Server Error فایل های CGI در دایرکت ادمین

در صورت مشاهده ارور و پیام خطا و پیغام Internal Server Error در هنگام اجرای اسکریپت های CGI توسط آپاچی و در کنترل پنل وب هاستینگ دایرکت ادمین ، باید موارد زیر را بررسی کنید .

قبل از هر چیز باید لاگی suexec واقع در مسیر زیر را بررسی کرد :

 

کلیه ارور های مربوط به Permission ها یا همان سطح دسترسی ها در این فایل ذخیره و لاگ میشوند . فایل باید در پوشه cgi-bin و تحت مالکیت همان یوزر و گروه (owner/group) مادر باشد و در غیر این صورت به درستی اجرا نخواهد شد .

پیغام Internal Server Error فایل های CGI در دایرکت ادمین

سطح دسترسی و CHMOD مربوط به پوشه های میبایست روی ۷۵۵ باشد و در غیراین صورت اسکریپت CGI برای اجرا شدن با مشکل مواجه خواهد شد . فقط پوشه public_html است که میتواند با سطح دسترسی ۷۵۰ نیز بدون مشکل کار کند (در صورتی که زیر مجموعه group یوزر apache باشد)

ساده ترین راه برای مشاهده ارور های اسکریپت CGI اجرای آن از طریق محیط SSH و به شکل زیر است :

 

برای رفع مشکل سطح دستری ها و Permission ها در دایرکت ادمین کار سختی پیش روی ندارید ، در واقع کافی است تا از اسکریپت تنظیم مجدد مالکیت ها و سطح دسترسی ها استفاده کنید . برای ست کردن مجدد سطح دسترسی ها مطابق زیر عمل کنید :

 

 

برای ست کردن مجدد مالکیت ها و ownership ها در لینوکس مبتنی بر کنترل پنل دایرکت ادمین مطابق زیر عمل کنید :

 

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


لینک به آموزش


بهینه سازی MySQL و فایل my.cnf در دایرکت ادمین

بهینه سازی MySQL و فایل my.cnf در دایرکت ادمین: یکی از بزرگ ترین معضلات مدیران سرور های اشتراکی لینوکس، بهینه کردن MySQL از طریق تنظیمات فایل my.cnf است. در صورتی که این مقادیر به صورت صحیح و حرفه ای ست شده باشند، فشار MySQL به سرور به طور قابل ملاحظه ای کاهش یافته و سرعت لود صفحات نیز بالا تر خواهد رفت.

بهینه سازی MySQL و فایل my.cnf در دایرکت ادمین

با توجه به اینکه دایرکت ادمین در توزیع های مختلف لینوکس قابل نصب و اجراست، نحوه بهینه سازی MySQL از طریق فایل کانفیگ my.cnf را به صورت مجزا در ۲ توزیع اصلی RHEL و Debian Based ها بررسی میکنیم.

بهینه سازی my.nf در سرور هالی لینوکس CentOS

هنگامی که mysql (4 + 5) نصب میشود به طور پیش فرض دارای یک فایل my.cnf است که اگر شما از رم ۲ گیگابایت به بالا استفاده کنید باعث می شود MySQL کمی سریعتر اجرا شود .

 

با توجه به سخت افزار شما، فایلی به نام my-huge.cnf یا my-medium.cnf نیز وجود دارد . محتویات این فایل ها را بررسی کنید.

نکته ۱ : گزینه log-bin به طور پیش فرض فعال است که به سرعت از فضای دیسک استفاده میکند، توصیه میشود که خط log-bin را در فایل /etc/my.cnf از حالت کامنت خارج کنید ( اگر وجود داشته باشد )

نکته ۲ : به فایل /etc/my.cnf قدیمی خود توجه داشته باشید ، اگر گزینه innodb_file_per_table=1 را در این فایل دارید مطمئن شوید که در فایل جدید نیز این تنظیمات وجود داشته باشد. به طور مشابه اگر در فایل قدیمی شما این گزینه فعال نیست، در فایل جدید هم نباید فعال باشد. اگر فایل my.cnf جدید دارای تنظیمات مختلفی برای innodb_file_per_table باشد، ممکن است اطلاعات شما را از بین ببرد.

مطمئن شوید که قبل از ایجاد هرگونه تغییرات در my.cnf ، از فایل های .sql به طور کامل بک آپ تهیه بگیرید.

Debian/FreeBSD

ما در حال حاضر برای این سیستم عامل ها فایل my.cnf بهینه سازی شده نداریم.

CentOS  و  MySQL 5.6

MySQL جدید نصب شده ممکن است شامل فایل های my-*.cnf files نباشد

ما در این آموزش چند فایل از MySQL 5.5 که به نظر می رسد با MySQL 5.6 کار میکند اضافه کرده ایم . برای مثال :

MySQL 4.x

اگر شما از mysql 4 استفاده می کنید ( نه mysql 5  ) میتوانید از کد زیر در فایل /etc/my.cnf استفاده کنید :

سپس مقادیر زیر را در ان اضافه کرده و با کلید های ترکیبی Crtl + X محتویات را ذخیره کنید .

 

اکنون mysqld را ری استارت کنید :

در لینوکس Redhat دستور زیر را اجرا کنید:

در FreeBSD دستور زیر را اجرا کنید :

این یک آموزش کلی و Basic برای بهینه سازی MySQL و فایل my.cnf در دایرکت ادمین و سرور های مبتنی بر Directadmin بود، کلیه مقادیر مشخص شده در مقاله فوق، نسبی و بر اساس کانفیگ سخت افزاری سرور و نوع کاربری آن متغیر است و کپی و پیست کردن محض آن ها نه تنها کمکی به بهینه سازی MySQL در سرور نمیکند، بلکه در مواردی باعث ایجاد اختلال در عملکرد سرور خواهند شد. اگر مبتنی هستید یا دقیقا متوجه مفاهیم آموزش داده در این سایت نشده اید، از دستکاری و کانفیگ سرور های مهم و با اهمیت اکیدا خود داری کنید و بهینه سازی MySQL را به افراد با تجربه و واجد شرایط بسپارید. ایجاد تغییرات اشتباه در فایل my.cnf حتی میتواند باعث Crash کردن MySQL و Corrupt شدن جداول دیتبایس های Innodb شده که در مواردی غیر قابل بازگشت است.


لینک به آموزش


گرفتن بکاپ از کل یک دایرکتوری در لینوکس

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

 

دو دستور برای ما کارامد خواهد بود، که نام اولین دستور tar و دومین دستور gzip است. کامند tar از همه فایل ها و دایرکتوری ها فایل پشتیبانی تهیه میکند دستور gzip فایل های مارا فشرده میکند و حجم را کاهش میدهد.

چگونه از کل دایرکتوری بکاپ بگیریم ؟

با استفاده از دستور زیر از کل دایرکتوری ها و زیر دایرکتوری ها و فایلها که در پوشه  ان قرار دارید بکاپ تهیه میکنید و در دایرکتوری جاری قرار میدهید.

  • ارگومان c : باید یک فایل جدید بسازی
  • ارگومان v : اسم اختصاری از verbose گرفته شده و اطلاعات بیشتری در مورد عملیات به ما میدهد.
  • ارگومان f : نام فایل ها را به ارشیو می دهد.

برای مثال من وارد پوشه tmp شده و از همه فایل ها بکاپ گرفتم. خروجی دستور رو مشاهده کنید :

میتوانید با دستور ls -l فایل بکاپ گرفته شده را مشاهده کنید :

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

این دستور فایلی به نام backup.tar.gz ایجاد میکند.

نحوه بازیابی فایل یکاپ

بعد از انقال فایل به مقصد در ابتدا باید فایل tar که در مرحل قبل فشرده کردیم از حالت فشرده خارج کنیم :

برای برگرداندن فایل بکاپ باید از دستور زیر استفاده کنید. توجه داشته باشید این دستور فایل را همانند فایل مبدا برگردان میکند :


لینک به آموزش


آموزش نصب SQL SERVER 2008

همانطور که از عنوان مقاله پیداست، قصد داریم نحوه ی نصب SQL SERVER 2008 را مرحله به مرحله توضیح دهیم تا کاربرانی که می خواهند از این نوع SQL SERVER استفاده نمایند بتوانند به راحتی از طریق دستورالعمل گفته شده در این مقاله اقدام به نصب و استفاده نمایند .

پس با ما همراه باشید

برای نصب SQL SERVER ابتدا می بایست فایل آن را برروی سرور ویندوزی خود دانلود نمایید، برای اینکار بعد از ریموت زدن به سرور خود از سایت های مختلفی می توانید این کار را انجام دهید (برای نمونه سایت getintopc.com)

بعد از دانلود و اجرای فایل پنجره ای به مانند زیر را مشاهده خواهید کرد که می بایست از منوی سمت چپ آن برروی گزینه ی installation کلیک نمایید

بعد از ورود به بخش installation گزینه ی اول یعنی new sql server stand-alone installaton or add features to an existing installation را بزنید تا وارد مراحل نصب شوید

در چند مرحله ی بعد می بایست با زدن گزینه ی next آن مراحل را رد کنید و سپس در مرحله ای که مانند شکل زیر است تیک گزینه ی licence term را زده و سپس next کنید

مرحله ی بعد ویژگی هایی که می خواهید نصب نمایید را تیک بزنید که البته با توجه به اینکه برروی سرور خود که از SERVER.IR خریداری نموده اید، دسترسی روت در اختیار دارید، توصیه می کنیم تمامی گزینه ها را تیک زده و وارد مرحله بعد شوید (همچنین در این مرحله می توانید مسیر نصب SQL را نیز تایین نمایید)

در بخش بعد می بایست Instance name نسخه ی SQL خود را وارد نمایید که برای SQL 2008 از MSSQLSERVER به عنوان instance name استفاده نمایید و در باکس زیرین آن که مربوط به instance ID می باشد نیز تنها با یک کلیک عبارت مذکور در این بخش قرار خواهد گرفت و بعد next کنید

۲ مرحله ی بعدی را نیز با زدن next عبور کنید تا به مرحله ی زیر برسید، در این قسمت تیک گزینه ی mixed mode را بزنید تا هم بتوانید از طریق SQL SERVER athentication (یعنی وارد نمودن یوزر و پسوورد SQL) و هم از طریق ویندوز به دیتابیس خود متصل شوید. بعد از زدن تیک این گزینه در زیر پسووردی که میخواهید برای دیتابیس خود قرار دهید را وارد نمایید(به طور مثال می توانید پسوورد سرور خود را وارد نمایید ) و در پایین آن user فعلی خود را که administrator است اضافه نمایید.

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

بدین ترتیب نصب SQL SERVER 2008 با موفقیت به اتمام رسید و می توانید با استفاده از نرم افزار SQL SERVER management studio به آن ریموت بزنید و از آن استفاده نمایید

در صورتی که در هنگام نصب با خطای

not all privileges or groups referenced are assigned to the caller

رو به رو شدید، وارد مقاله ی مربوطه شوید و موارد گفته شده را انجام دهید تا مشکل شما برطرف شود


لینک به آموزش


نحوه فعال سازی hotlink protection در دایرکت ادمین

کار Hotlink Protection چیست؟
یکی از مزیت های Hotlink Protection این است که از کپی شدن فایل های شما در سایت های دیگر جلوگیری می کند.

برای مثال اگر شخصی به عنوان مثال یکی از تصاویر یا لینک های دانلود سایت شما را در سایت خود کپی کند کاربران آن سایت قادر به دانلود فایل ها نخواهند بود و کاربران در هنگام دانلود به سایت شما ریدایرکت خواهند شد.
زمانی که سایتهای دیگر به فایلهای سایت شما از قبیل تصاویر، فایل های دانلود و … بصورت مستقیم لینک می دهند در واقع از پهنای باند سایت شما استفاده می کنند.

Hotlinks protections به شما این امکان را می دهد تا سایت های دیگر نتوانند به فایلهای سایت شما مستقیما لینک دهند. سایتهای دیگر می توانند بدون اینکه شما اطلاع داشته باشید به فایلهای سایت شما لینک دهند اما زمانی که شما از این سرویس استفاده کنید سایتهای دیگر نمی توانند از فایلهای سایت شما استفاده کنند.

زمانی که شما نخواهید فایل ها و یا تصاویری که بر روی هاست شماست را دیگران در سایت ها و وبلاگ های خود قرار دهند به راحتی می توانید با استفاده از کد زیر در .htaccess موجود در public_html هاست خود مانع چنین عملی شوید.

کافیست وارد هاست سایت خود شوید و کد زیر را در فایل .htaccess قرار دهید، این فایل در پوشه ی public_html قرار دارد.

این کد برای فرمت های jpg|jpeg|png|gif|bmp تعریف شده است.
توجه نمایید به جای yourdomain.com نام دامنه خود و به جای www.yourdmain.com/YOUR-ADDRESS باید آدرس URL و یا تصویری که می خواهید جایگزین آدرس مورد نظر شود را وارد نمایید.


لینک به آموزش


ریستور کردن دیتابیس پر حجم و بزرگ از طریق ssh

یکی از بزرگ ترین مشکلات مشتریانی که از هاست اشتراکی و میزبانی وب لینوکس به سرور مجازی یا سرور اختصاصی کوچ میکنند مشکل ریستور کردن فایل های sql بزرگ و حجیم در MySQLL سرور لینوکس است . برنامه هایی مانند phpmyadmin یا MySQL Dumper قادر به ذخیره سازی و ریستور کردن و بازیابی دیتابیس های خیلی بزرگ و حجیم نیستند و در صورت انتقال و ریستور کردن با آن ها همیشه احتمال و خطر بازیابی ناقص اطلاعات و آسیب دیدین دیتابیس وجود دارد.

از طرفی همیشه امکان ریستور کردن بکاپ کلی یا Full Backup برای خریدار سرور مجازی یا سرور اختصاصی امکان پذیر نیست . مثلا فول بکاپ توسط کنترل پنل cPanell ایجاد شده است ولی سرور مقصد از کنترل پنل دایرکت ادمین یا کلوکسو استفاده میکند . در این وضعیت هیچ راهی نیست جز استفاده از دستورات و کامند های ssh در لینوکس . در صورت استفاده صحیح از این کامند ها و دستورات برای بازیابی و ریستور کردن فایل های MySQL و دیتابیس ، قادر خواهید بود به راحتی فایل های MySQL با پسوند .sql و حجم های بالای ۱۵ و ۲۰ گیگ را در کمترین زمان ممکن و بدون خطا و آسیب دیدن به اطلاعات بازیابی و ریستور کنید .

قبل از انجام ریستور کردن دیتابیس توسط دستورات لینوکس در محیط ssh ابتدا باید اندازه پارامتر max_allowed_packet را بر اساس حجم دیتابیس مورد نظر تنظیم نمایید . برای ایجاد تغییرات در این پارامتر باید فایل my.cnf در مسیر /etc/ را ادیت کرده و میزان مورد نظر خود را وارد نمایید . سپس فایل را ذخیره کرده و سرویس MySQL را ریست کنید .

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

با زدن کلید Enter سیستم عامل از شما رمز و کلمه عبور دیتابیس ساخته شده در کنترل پنل را میخواهد که با وارد کردن آن عملیات بازیابی و ریستور کردن دیتابیس آغاز میگردد . اگر به کلمه عبور MySQL Root Password دسترسی دارید میتوانید بدون نیاز به کلمه عبور و نام کاربری دیتابیس اقدام به بازیابی و ریستور کردن آن با یوزر root پایگاه داده MySQL نمایید :

 


لینک به آموزش