برای راه اندازی یک سرور شخصی که به صورت تکی کار کند و نیازی به شبکه شدن با سایر سرورها نداشته باشد به راحتی می توانید در کمتر از 2 ساعت مراحل زیر را طی کرده و از نتیجه کار لذت ببرید.

 

راهنمای نصب و راه اندازی لینوکس + دایرکت ادمین بر روی سرور

  1.  گام اول این است که یک رایانه نسبتا خوب فراهم کنید. حداقل دو گیگابایت رم به منظور نصب نرم افزارها و سیستم عامل مناسب سرور، 20 گیگابایت فضا ( یا بیشتر ) و 2 هسته CPU برای یک سرور با بازدید روزانه کمتر از 4000 IP مناسب است. ما سیستم مان را با همین حداقل ها راه اندازی خواهیم کرد.
  2.  گام دوم یک اتصال پر سرعت اینترنت به سرور جهت دریافت بسته های نصبی است. در طی مراحل نصب، برخی نرم افزارها و بسته های نصبی هستند که لازم است روی سرور نصب و اجرا شوند. معمولا این بسته ها را باید از طریق اینترنت به طور مستقیم با دستور خاصی دریافت کرده و نصب کنید. هرچه سرعت دسترسی شما به شبکه بیشتر باشد یقینا مدت زمان نصب هم کمتر خواهد بود.
  3. دانلود آخرین ویرایش پایدار (Stable) از لینوکس CentOS. البته سایر لینوکس ها هم قابل استفاده هستند ولی به شخصه امکانات لینوکس CentOS را ترجیح می دهم. در ادامه دستوراتی که در محیط لینوکس اجرا می شوند همه مرتبط به این نگارش بوده و برای دستورات مشابه در سایر توزیع ها می توانید در صورت تمایل در اینترنت جستجو کنید. پیشنهاد می کنم شما هم برای ابتدای کار از همین لینوکس استفاده کنید. البته اکثر سرورهای جهان هم از همین توزیع استفاده می کنند.
  4.  یک عدد IP استاتیک جهت اختصاص به سرور هم نیاز دارید که می توانید از شرکت ارائه دهنده ی اینترنت خود نسبت به خرید آن اقدام کنید. معمولا هزینه ی IP ثابت، بین ماهی 5 تا 15 هزارتومان متغییر است.
  5. خوب قدم اول این است که در یک مجازی ساز مثل vmWare و یا به طور خام روی سیستم، لینوکس را نصب کنید. برای این کار در مجازی ساز vmWare فقط کافی است آدرس فایل ISO ای که دانلود کرده اید را به برنامه دهید و فقط Next...Next کنید تا لینوکس شما در کمتر از 10 دقیقه نصب و آماده کار باشد.
  6.  بعد از طریق دستور setup در محیط ترمینال لینوکس و ورود به قسمت تنظیمات IP و کانکشن، اطلاعات IP استاتیک خود را وارد کنید تا لینوکس شما دارای یک IP ثابت شود. بعد هم از طریق منوی بالایی اقدام به اتصال به اینترنت کنید.
  7. حالا فقط کافی است یک نسخه ی نال شده یا خریداری شده از کنترل پنل معروف دایرکت ادمین داشته باشید. پیشنهاد می کنم به منظور جلوگیری از دردسر های نصب یک نسخه ی یک ماهه تهیه کنید و از همان طریق ادامه دهید. تذکر :" سایر کنترل پنل ها مثل cPanel و یا نسخه های رایگان Kloxo, zPanel و غیره هم وجود دارند ولی cPanel به علت تحریم ها و آن دو دیگر هم به علت پیچیدگی کار نسبی، در اول کار پیشنهاد نمی شود. توصیه می شود بعد از چندین نوبت نصب و کانفیگ سرور و سر و کله زدن با چم و خم کار در کنترل پنل ساده ی دایرکت ادمین، اگر خواستید برای تفریح آنها را نصب کنید :) " 
  8. وقتی یک لایسنس دایرکت ادمین خرید می کنید دو شماره به شما داده می شود که از آن دو شماره در طول روند نصب استفاده خواهید کرد. فعلا کاری با آنها نداریم.
  9.  در اینترنت جستجو می کنید " Install Directamin On CentOS "، احتمالا اولین گزینه ای که به شما نشان داده خواهد شد صفحه ی راهنمای دایرکت ادمین است که روند نصب را توضیح داده است. در این صفحه یادآوری شده که پیش از نصب این پنل قدرتمند و ساده باید ابتدا یک سری چیزهای پیش نیاز نصب شود. در همین جا یک یا چند دستور لینوکس هم ذکر شده که برای اجرا فقط کافیست آنها را در محیط ترمینال لینوکس ( همان پنجره سیاه رنگ که شبیه Command ویندوز است ! ) کپی کنید و یک بار کلید Enter را بفشارید. معمولا چند ثانیه نصب این پیش نیازها طول خواهد کشید.
    به عنوان مثال برای لینوکس CentOS 6.x این دستورات ارا ئه شده است :
    yum install wget gcc gcc-c++ flex bison make bind bind-libs bind-utils openssl openssl-devel perl quota libaio libcom_err-devel libcurl-devel gd zlib-devel zip unzip libcap-devel cronie bzip2 cyrus-sasl-devel perl-ExtUtils-Embed autoconf automake libtool which patch mailx db4-devel
  10. مرحله ی بعدی نصب خود دایرکت ادمین است. در اینجا هم سایت سازنده توضیحات مکفی داده است. فقط کافی است دستوراتی که داده است را به ترتیب در محیز ترمینال لینوکس خود وارد کنید. به عنوان مثال در CentOS این دستورات داده شده است :
    wget http://www.directadmin.com/setup.sh
    chmod 755 setup.sh
    ./setup.sh
  11. روند نصب علی القاعده باید شروع شده باشد. بعد از چند سوال و جواب کوتاه از شما آن دو عدد لایسنس پرسیده خواهد شد که کافیست به راحتی تمام تر وارد کرده و منتظر مابقی روند باشید.
    توجه: در طول روند نصب هرجا سوالی پرسیده شد پاسخش در همان نزدیکی داده شده است. کمی در محتوایی بالایی سوال جستجو کنید متوجه منظور خواهید شد.
    تذکر : هرجا نسخه ی CustomBuild از شما خواسته شد آخرین ویرایش Stable آن را وارد کنید. نسخه های Beta قابل اعتماد نیستند.
  12.  بعد از چند دقیقه طولانی (!) روند نصب تکمیل شده و نام کاربری و رمز عبور مدیریت دایرکت ادمین به شما داده می شود. لطفا تا زمان ورود به پنل مدیریت سایت و تغییر رمز عبور این پنجره را نبندید که بعد مجبور به اقدامات ژانگولر برای پیدا کردن رمز نشوید !
     
  13. بعد از اینکه پنل دایرکت ادمین شما نصب شد به صورت خودکار وب سرور Apache ، یانک اطلاعاتی MySQL ، آخرین نسخه ی PHP و کلا اکثر موارد مورد نیاز سرور هم نصب شده است و برای نصب آنها نیاز به هیچ کار اضافه ای نخواهید داشت. فقط چند چیز کوچک مانده است که باید نصب شود تا تنظیمات سرور امنیت آن کاملا دست شما باشد. از اینجا در واقع عملیات نصب تمام شده و در حال مدیریت سرور شخصی خودتان هستید.

 تذکر  : در هنگام نصب از شما IP سرور خواسته می شود. و وقتی نصب تمام شد شما می توانید با درج همین IP در مرورگر وارد پنل هاست شوید اما آیا همین کافیست ؟!!! خب یقینا برای ارائه سایت به دیگران نیاز به یک دامنه دارید. کافیست دامنه را ثبت کرده و در پنل مدیریت دامنه در همان جایی که آنرا خرید کرده اید در قسمت NS ها IP هاست خود را جلوی NS ها وارد کنید. دستور العمل دقیق اش هم در اینترنت موجود است فقط کمی جستجو کنید پیدا می شود :)

 

 

راهنمای مدیریت سرور :

  1.  اولین قدم در مدیریت سرور ایجاد Name Server هاست. تا زمانی که این سرویس به درستی راه اندازی نشود عملا امکان دسترسی به هاست شما فقط از طریق IP ممکن است. برای اینکار هیچ اقدام محیر العقولی لازم نیست. فقط وقتی وارد پنل مدیریت دایرکت ادمین شدید از قسمت سمت راست گزینه ی user Level و سپس Domain Setup را انتخاب کرده و دامنه ی اصلی هاست خود ( مثلا GolbaghalaiHost.com ) را معرفی کنید. به همین راحتی تمام تنظیمات مورد نیاز Name Server انجام می شود. برای چک وضعیت نیم سرورها هم می توانید از سایت intoDNS.com استفاده کنید. 

    اخظار دردآور : بعضی مواقع بعد از معرفی دامنه و نیم سرور ها بازهم وقتی آدرس سایت را وارد می کنید هیچ چیزی باز نمی شود و خطای Domain Expired داده می شود در این حالت به احتمال 99.9 درصد مشکل از فایروال لینوکس است که پورت 52 مورد استفاده NameServer را مصدود کرده است. فقط کافی است بار دیگر وارد محیط ترمینال لینوکس شده و دستور زیر را وارد کنید تا فایروال لینوکس غیرفعال شود .
     
    service iptables stop
    
    service iptables status

    اگر پیام iptables: Firewall is not running. به شما داده شد یعنی فایروال به طور موقت غیرفعال شده است. فقط برای غیرفعال سازی دائم این فایروال لازم است تا با دستور Setup در ترمینال و ورود به بخش تنظیمات لینوکس تیک کنار گزینه Enable در بخش فایروال را بردارید تا در دفعات بعد وقتی سرویس ریستارت می شود هم فایروال غیرفعال باقی بماند.
    ضمنا از این بابت نگرانی نداشته باشید چرا که بعدا فایروالی مناسب سرور بر روی آن نصب خواهد شد و دیگر نیازی به این فایروال نخواهیم داشت.
     
  2. خوب الان که نیم سرورها تنظیم شد نوبت نصب یک فایروال پدر مادر دار است که وضعیت امنیت سرورمان هم کمی خوب شود و از دلواپسی رها شویم ! برای این کار باز به محیط سیاه رنگ و دوست داشتنی (!) ترمینال بازگشته و با ذکر چند صلوات اقدام به تایپ دستورات زیر جهت نصب فایروال می کنیم.
     
    cd /usr/src
    rm -fv csf.tgz
    wget https://download.configserver.com/csf.tgz
    tar -xzf csf.tgz
    cd csf
    sh install.sh

    در برخی مواقع بعد از دستور خط 3 (قرمز رنگ) خطایی مبنی بر اینکه امکان دانلود فایل مورد نظر وجود ندارد داده می شود که فقط کافیست فایل فوق را به صورت دستی در رایانه خودتان دانلود کنید و در یک جای دیگری که لینک مستقیم به شما بدهد آپلود کنید. و در دستور فوق به جای عبارت wget https://download.confi..... آدرسی که فایل را اپلود کرده اید بدهید.
     
  3. بعد از نصب فایروال نوبت به نصب یه نرم افزار ( پلاگین ) عالی برای مدیریت سرور در دایرکت ادمین می رسد. کافیست در گوگل سرچ کنید CustomBuild 2 plugin for directadmin تا به یک فایل برسید که با فرمت زیپ و قابل دانلود است. فقط باید این فایل را گرفته و در پنل مدیریت دایرکت ادمین در قسمت Admin در بخش plugin Manager برای نصب آن اقدام کنید. بعد از نصب یک گزینه ی جدید به بخش Extra Filed در پنل دایرکت ادمین شما اضافه خواهد شد که امکان تغییر نسخه PHP ، نصب آنتی ویروس Clam و خیلی امکانات دیگر را به سادگی یک کلیک فراهم می کند. (فکر می کنم قبل از نصب پلاگین، باید پیش نیازهایی را نصب کنید. برای اینکار جستجو کنید.)
     
  4. خب تقریبا کار تمام شده است. بعد از اینکه کاستوم بیلد را هم نصب کردیم باید برای انجام تنظمیات ایمنی در سرور اقدام کنیم. در قدم اول باید سری به تنظمیات همین پلاگین بزنیم و سرور خود را برای میزبانی از خیل عظیم مشتاقان اینترنت آماده کنیم (!). تنظیمات موجود در این قسمت بسیار زیاد است ولی خوبی ای که دارد برای هرکدامش به اندازی یک خروار مطلب در اینترنت پیدا خواهید کرد. البته نیازی هم نیست که دستکاری اشان بکنید. فقط به منظور افزودن ویروس کش در قسمت Edit Option در این پلاگین، بخشClamAV-related Setting را یافته و ClamAV را بر روی yes قرار دهید و بعد از ذخیره به بخش Build Software رفته و بر روی Build ClamAV کلیک کنید تا این نرم افزار نصب شود.
    توجه داشته باشید که هر تغییری در این قسمت نیاز به Build مجدد آن بخش دارد. مثلا اگر نسخه ی PHP خود را از 5.4 به 5.6 تغییر داده و یا مود PHP را از PHP_FPM به FastCGI تغییر دادید برای اعمال این تغییر باید بعد از ذخیره تغییرات در قسمت Edit OPtion به بخش Build Software رفته و بخش مربوطه را مجددا Build کنید. در این مثال باید بر روی Build PHP و Build mod_fastcgi کلیک کنید و منتظر بمانید تا پیغام اتمام Build به شما نمایش داده شود.
    تذکر : معمولا این تنظیمات تاثیر مستقیم بر روی سایت های مستقر روی هاست شما خواهد داشت. خصوصا تغییر در تنظیمات PHP به شدت بر روی عملکرد سایت های زیر مجموعه شما تاثیر گذار خواهد بود پس لطفا قبل از هر تغییری ابتدا خوب از اثرات آن مطلع شوید. البته زیاد هم لازم نیست بترسید چرا که در نهایت می توانید در صورت خرابی، تنظیمات را به حالت قبل برگردانده و مجددا Build کنید !
     
  5. برای امن کردن PHP و حذف توابع مخرب آن هم کافیست در همین کاستوم بیلد به قسمت Update Custom Configuration رفته و بر روی کلید submit در قسمت Secure PHP بفشارید ! به همین راحتی !
     
  6. مرحله ی بعدی تنظیمات موجود در فایروال است که فقط کافیست دستورالعمل های موجود در خود آن را بخوانید ! برای اینکار کافیست از قسمت Extra Fileds در پنل دایرکت ادمین مدیریت کل، وارد تنظیمات ConfigServer Firewall&Security شده  و بر روی Check Server Security کلیک کنید. در انتهای همین صفحه بر روی کلید Check Again and display all check کلیک کنید. بعد از این کار برخی آیتم های موجود در جدل سبز رنگ شده که کاری به آنها نداریم چون علی القاعده سبز یعنی خوب ! می ماند آن قرمزها که اکثرشان را خودش توضیح داده برای سبز شدن باید چه کار کرد. فقط کافیست همان توضیحات را خوانده و عمل کنید تا رستگار شوید ! 
     
  7. با اعمال تنظیمات در فایروال تقریبا سرور ما برای یک سرویس دهی عمومی آماده است. معمولا اکثر خطرات موجود برای سرورها هم الان دیگر بر روی سرور ما اثر ندارد فقط می ماند برخی حملات ناجوانمردانه مثل حملات DDoS که در حال حاضر برای رفعشان هنوز راه حل قطعی نداریم و همین راه حل های فعلی هم کمی پیچیده و حوصله سر بر است. پس آنها را می گذاریم به وقتش اگر مشتری خورد و مجبور شدیم می رویم یاد میگیرم :) در حال حاضر همین اندازه بس است.

     
  8. برای بچه زرنگ ها : اگر هنوز حوصله اتان سر نرفته و خوره شده اید که ببینید کار دیگری هم می شود کرد یا نه خوب معلوم می شود که از آن بچه زرنگ هایی هستید که سر کلاس هم زیر گوش استاد می نشینید. برای شما برنامه ی ویژه ای داریم ! شما باید الان یک سر دیگر وارد کاستوم بیلد شده و از قسمت Build Software به ترتیب بر روی Build ModSecurity و Build ModSecurity_Rules کلیک کنید تا یک بخش امنیتی دیگر به دایرکت ادمین شما اضافه شود. تنظیمات این بخش هم مثل همان فایروال اکثرا به صورت خودکار انجام می شود و فقط کافیست شما کمی Next ... Next کنید. فقط همین قدر بگویم که این امکان جدید توسط شرکت معتبر و قدرتمند COMODO ارائه شده و یقینا در افزایش امنیت هاست شما تاثیر به سزایی خواهد داشت.
    ضمنا یادتان نرود که برای اعمال این تنظیمات بر روی سایت های زیر مجموعه شما باید در قسمت Edit Option در کاستوم بیلد در بخش Web Server Setting گزینه ی Mod_Security بر روی yes تنظیم شده و PHP مجددا Build شود. از این قسمت اطمینان ندارم ولی فکر کنم بهتر است قبل از Build مود سکوریتی ابتدا از PHP را Build کنید.
     
  9. قالب پیش فرض دایرکت ادمین چندان چنگی به دل نمی زند. برای اینکه محیط کاریمان هم از امروز کمی قشنگ تر شود، می توانید از قالب کاپری (Capri) استفاده کنید. برای نصب این قالب کافیست راهنمای موجود در این آدرس را مطالعه کنید یا اگر لینک منقضی شده بود در گوگل به فارسی جستجو کنید.
  10. دیگران کاشتند و ما خوردیم .... ما بکاریم دیگران بخورند.
     
  11. والسلام و علیکم و رحمه الله و برکاته

 

نکات تکمیلی :

  • تبدیل یونیکد ادیتور فایل در دایرکت ادمین به UTF-8
  1. ورود به SSH هاست
  2. nano -w /usr/local/directadmin/data/skins/enhanced/lang/en/lf_standard.html
  3. LANG_ENCODING=iso-8859-1 to LANG_ENCODING=utf-8
  4. ذخیره

 

  • تبدیل کولیشن دیفالت MySQL به UTF8-GENERAL در دایرکت ادمین
  1. کولیشن دیفالت دایرکت ادمین بر روی Latin-Swidish قرار دارد و در سایت های فارسی خصوصا برای افزونه های سیستم های مدیریت محتوا ایجاد مشکل می کند برای تبدیل این کولیشن به UTF8 لازم است فایل my.cnf که مربوط به تنظیمات MySQL است ویرایش گردد. این فایل به طور پیش فرض وجود ندارد و باید در آدرس زیر ایجاد شود :
    /etc/my.cnf
  2.  اگر این فایل در سرور شما موجود بود لازم نیست حذف شود، فقط کافیست اطلاعات زیر جایگزین یا اضافه شود.
  3. ابتدا با دستور nano /etc/my.cnf این فایل را باز می کنیم ( اگر وجود نداشته باشد، یک فایل خام با این اسم ایجاد می شود ) و در متن آن کدهای زیر را وارد می کنیم:
  4. [client]
    default-character-set=utf8
    
    [mysql]
    default-character-set=utf8
    
    
    [mysqld]
    collation-server = utf8_unicode_ci
    init-connect='SET NAMES utf8'
    init_connect='SET collation_connection = utf8_unicode_ci'
    character-set-server = utf8
  5. سپس با ذخیره کردن این فایل (Ctrl+x و زدن y) وارد پنل مدیریت دایرکت ادمین شده و سرویس mysqld را ریستارت می کنیم. از صحت کارکرد دیتابیس بعد از ریستارت حتما مطمئن شوید. کافیست یکی از سایت های روی هاستتان که از دیتابیس استفاده می کند را باز کنید، اگر باز شد یعنی دیتابیس در حال کار است.
  6. تمام
  • راه اندازی SpamAssassin در دایرکت ادمین برای کمک به وضعیت ایمیل ها

    از اینجا و اینجا استفاده کنید.

 

  • راه اندازی سیستم نمایش فضای استفاده شده در هارد لینوکس
  1. ابتدا از نصب نبودن NCDU با وارد کردن دستور ncdu در محیط ssh مطمئن شوید.
  2. اگر ncdu نصب نبود از این طریق نصب کنید :
    ابتدا این دستور را وارد کنید تا از نصب بودن EPEL 6 مطمئن شوید، برای نصب ncdu این برنامه الزامی است.

    rpm -ivh http://www.mirrorservice.org/sites/dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

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

    Retrieving http://www.mirrorservice.org/sites/dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
    Preparing...       ########################################### [100%]
        1:epel-release ########################################### [100%]

    در غیر این صورت ابتدا آنرا نصب کنید.
    پس از طی مراحل بالا، سیستم برای نصب NCDU آماده است.
     
  3. با دستور yum -y install ncdu NCDU را نصب کنید.
  4. پس از نصب، با دستور ncdu آنرا اجرا کنید.

 

 

 

  • غیرفعال کردن رابط گرافیکی لینوکس و ازادسازی بیش از 1 گیگابایت رم
  1. وارد محیط SSH شده و با استفاده از دستور زیر به ویرایش فایل تنظمیات بپردازید.
    nano /etc/inittab
  2. حال در عبارت زیر در این فایل عدد 5 را به 3 تغییر دهید.
    id:5:initdefault: ----> id:3:initdefault:
  3. با دستور reboot سرور را مجددا راه اندازی کنید. ( می توانید وضعیت رم سرور را با دستور top مشاهده کنید. )