جی بلاگ

آموزش نصب دایرکت ادمین

لوگوی دایرکت ادمین

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

مرحله اول: نیاز ها

قبل از هرچیزی مطمئن شوید که یک سیستم عامل تمیز و پشتیبانی شده دارید و سرور شما حداقل یک آی پی ایستا و خارجی دارد و کامپایلر های gcc و g++ را نصب شده دارید!

جزئیات دقیق نیاز های دایرکت ادمین را در این مقاله مطالعه کنید.

مرحله دوم: لایسنس

لطفا مطمئن شوید که یک لایسنس معتبر برای سرورخود تهیه کردید.

لایسنس های دایرکت ادمین اکثرا به دو نوع تهیه میشوند: ماهیانه و مادام العمر.

به هر حال درصورتی که شما لایسنس معتبر داشته باشید، باید دو عدد به نام های Client id و  license id داشته باشید.

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

مرحله سوم: شروع نصب

قبل از هرچیزی از طریق ssh یا terminal وارد سرور خود شوید.اگر بلد نیستید این مقاله را بخوانید.

اگر دسترسی root یا admin به سرور ندارید لطفا از دستور su استفاده کنید.

فایل نصاب دایرکت ادمین را دانلود کنید:

wget http://www.directadmin.com/setup.sh

دسترسی های لازم اجرا شدن را به فایل نصاب عطا کنید:

chmod 755 setup.sh

نصاب را اجرا کنید

./setup.sh

مرحله چهارم: نصب

هنگامی که پیام زیر را دریافت کردید، دکمه y را بفرشارید و اینتر را بزنید

Would you like to install these required pre-install packages? (y/n):

منتظر باشید تا نرم افزار های لازم بر روی سرور شما نصب شود.

سپس متن Please enter your Client ID را مشاهده میکنید.لطفا عدد Client id را که از فروشنده لایسنس دریافت کردید را وارد کنید.

در مورد متن Please enter your License ID هم همانند بالا عمل کنید.

زمانی که متن Enter your hostname را مشاهده کردید نام سرور خود را که به فروشنده لایسنس قبلا دادید، وارد کنید.

هنگامی که Is this correct? را دیدید با دکمه y تایید کنید و در پاسخ Is xxx.xxx.xxx.xxx the IP in your license? اگر آی پی سرور مطابقت میکرد تایید کنید.

در پاسخ Is this correct? (must match license) باز هم y را بفشارید.

ما اگر به جای شما باشیم قطعا در پاسخ پرسش Enter your choice (1 or 2 or 3 or 4) گزینه چهارم را انتخاب میکردیم.

در پاسخ سوال های Would you like the default settings of…. و Would you like to search for the fastest download mirror? به نشانه تایید دکمه y را بفشارید.

سپس منتظر شوید!حتی شاید سی دقیقه تا یک ساعت فقط تماشاچی کد ها و متونی باشید که هیچ چیز آن ها نمیفهمید!

در پایان نصب نام کاربری و پسورد برایتان ذکر میشود.

منبع: وب سایت رسمی دایرکت ادمین

شرایط نصب دایرکت ادمین

سیستم عامل های قابل پشتیبانی:

  • RedHat Enterprise / CentOS 5.x 32/64-bit, 6.x 32/64-bit, 7.x 64-bit BETA
  • FreeBSD 8.x 64-bit, 9.x 32/64-bit
  • Debian 6.x 32/64-bit, 7.x 32/64-bit
  • Ubuntu 10.04, 12.04, 14.04 32/64-bit

اگر نمیدانید که چه سیستم عاملی روی سرور خود دارید، این مقاله به شما کمک میکند.

حداقل پارتیشن بندی  مناسب:

  • swap حدود دو برابر رم سرور
  • موقعیت /boot با حجم 40 مگابایت
  • موقعیت /tmp با حجم 1 گیگابایت
  • موقعیت / با حجم 6 تا 10 گیگابایت
  • موقعیت /var با حجم 8 تا 20 گیگابایت
  • موقعیت /usr با حجم 5 تا 12 گیگابایت
  • موقعیت /home به حجم باقی مانده هارد
برای سرور هایی که رمشان از 8 گیگابایت بیشتر است، پیشنهاد میشود بیشتر از 8 گیگابایت برای پارتشین swap اختصاص ندهند
بسیار پیشنهاد میشود حتی امکان پارتیشن /tmp با تنظیمات noexec,nosuid ایجاد شوند
بسیار پیشنهاد میشود حتی امکان پارتیشن /home با تنظیمات nosuid ایجاد شوند

سخت افزار

دایرکت ادمین به شما پیشنهاد کرده که پردازشگر شما حداقل از 500 مگاهرتز(mhz) سرعت برخوردار باشد.همچنین مقدار رم سرور حداقل 1 گیگابایت و حداقل مقدار پارتیشن swap دو گیگابایت باشد.فضای خالی بعد از نصب لینوکس حداقل 2 گیگابایت لازم است.مشخص است که هر چقدر سایت های شما از ترافیک بیشتری برخوردار باشند، نیاز بیشتری به منابع سرور پیدا خواهید کرد.

نرم افزار

برای نصب دایرکت ادمین نیاز است تا مطمئن باشید که ssh و کامپایلر های gcc و g++ نصب شده باشند.

همچنین هسته (Kernel) لینوکس از فضای کاربر و نسخه 6 آی پی(ip v6) باید حتما پشتیبانی کند.

سطح دسترسی

لازم است تا نصب کننده(شما) دسترسی به root سرور داشته باشد.

آی پی

شما لازم دارید تا حداقل یک آی پی خارجی(External) و ایستا (static) بر روی سرور خود داشته باشید، هرچند که پیشنهاد میشود که دو عدد آی پی داشته باشید تا بهترین کارایی را از Dns Server داشته باشید.

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

چه چیز هایی نصب میشوند؟

directadmin                               کنترل پنل

آپاچی 2.2 یا 2.4                          وب سرور

انجین ایکس 1.6                           وب سرور

پی اچ پی 5.3 یا 5.4 یا 5.5 یا 5.6     زبان برنامه نویسی

مای اس کیو ال 5.1 یا 5.5 یا 5.6      پایگاه داده

PhpMyAdmin                             مدیریت پایگاه داده

exim                                         میل سرور

 

منبع: دایرکت ادمین

بهینه سازی دایرکت ادمین برای زبان فارسی

لوگوی دایرکت ادمین

دایرکت ادمین یک پنل مدیریت سرور برای مقاصد تجاری و میزبانی وب است و با تمام سادگی از طرفداران زیادی برخوردار است.

اما این برنامه بصورت پیشفرض از کدبندی(Encoding) زبان های لاتین یعنی iso-8859-1 استفاده میکند.ما فارسی زبانان برای اینکه بتوانیم بدون مشکل از ویرایشگر فایل دایرکت ادمین استفاده کنیم باید این کد بندی را به utf-8 تغییر دهیم تا تمامی زبان ها بدون مشکل قابل استفاده باشند.

در این آموزش شما به کمک ما میتوانید این کار را به راحتی انجام دهید.

ادامه ی مطلب

تغییر پورت دایرکت ادمین

لوگوی دایرکت ادمین

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

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

در این آموزش ما به شما می آموزیم که چگونه این کار را انجام دهید.

ابتدا قبل از هر چیزی به ssh سرور خود متصل بشوید(اگر بلد نیستید اینجا را مطالعه کنید).

سپس با دستور زیر و با استفاده از ویرایشگر nano اقدام به ویرایش فایل تنظیمات نرم افزار دایرکت ادمین بکنید:

nano /usr/local/directadmin/conf/directadmin.conf

(اگر نانو بر روی سرور شما نصب نیست به این مقاله مراجعه کنید)

در ادامه به دنبال خط زیر باشید:

.....
port=2222
....

در ادامه با تغییر عدد 2222 و ذخیره کردن فایل( با کلید ترکیبی Ctrl + o) از ویرایشگر خارج شوید(با کلید ترکیبی ctrl + x).

توجه بفرمایید که عدد پورت جدید شما باید یک عدد از 0 تا 99999 باشد که توسط هیچ نرم افزاری در حال استفاده نباشد.(مثلا نمیتوانید از عدد 80 یا 22 استفاده کنید)

سپس دستور زیر را وارد کنید تا پروسس دایرکت ادمین از نو آغاز شود:

service directadmin restart

از الان میتوانید با پورت جدید وارد بشید.

نصب nano در لینوکس

نرم افزار نانو

کمی در مورد nano

nano (نانو بخوانید) یک ویرایشگر رایگان متن مخصوص سیستم عامل های شبه لینوکسی است که در یک واسط خط فرمان (Command-line interface) اجرا میشود و هدفش در ابتدا جایگزینی نرم افزار Pico بود و توسط Chris Allegretta در سال 1999 خلق شد و امروزه یک قسمت از از پروژه های گنو (GNU Projects) میباشد.

نصب nano

ابتدا به ssh سرور خود متصل شوید.(اگر نمیدانید ssh چیست یا نمیدانید چطور به آن متصل شوید لطفا این مقاله را مطالعه بفرمایید)

در توزیع های RedHat و Centos با اجرای دستور زیر میتوانید nano را در سریع ترین حالت نصب کنید:

yum install -y nano

در توزیع های Debian و Ubuntu با اجرای دستور زیر میتوانید nano را نصب کنید:

apt-get install nano -y

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

منبع: ویکی پدیا

 

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

توزیع های لینوکسی

گاهی برای نصب برخی از نرم افزار ها یا ایجاد تغییراتی شما به عنوان یک مدیر سرور باید بدانید که چه توزیع و با چه ورژنی از لینوکس بر روی سرور شما نصب شده.

برای بدست آوردن نام و نسخه توزیع لینوکسی ما سه روش یافتیم!

  1. ازطریق اطلاعات /etc/*-release
  2. از طریق دستور lsb_release
  3. از طریق فایل /proc/version

ادامه ی مطلب

نحوه اتصال به ssh

کاربرانی که برای اول سرور های لینوکس را خریداری میکنند همیشه با کلماتی مثل دستورات ssh یا ترمینال مواجه میشوند و متوجه میشوند که یک چیز مهم را نمیدادند.امروزه با وجود کنترل پنل های هاستینگ مختلف از جمله cpanel و directadmin یا webmin بسیاری از نیاز های یک مدیر سرور بدون دسترسی به ssh مرتفع میشود اما هرگز این کارایی کافی نخواهد بود.

ادامه ی مطلب

بیشتر در مورد آسیب پذیری shellshock بدانید

shellshock

کمی در مورد Bash بدانیم!

Bash یک Shell برای سیستم‌ عامل های مبتنی بر Unix هست، به عبارت دیگر Bash یک مفسر است که دستورات کاربر را مدیریت می‌کند. همچنین Bash می‌تواند به عنوان یک مفسر برای CGI Script ها در وب سرور به کار گرفته شود. از اواخر دهه‌ی ۸۰ میلادی، Bash یکی از پرطرفدار ترین‌ها بوده و به صورت پیش‌فرض همراه هر سیستم‌عامل مبتنی بر Linux و البته سیستم‌عامل OS X ارایه می‌شود.

چه سرویس‌هایی می‌تواند آسیب‌پذیر باشد؟

طبق بررسی اولیه، هر سیستم‌عامل مبتنی بر Unix دارای Bash به روز نشده، دستگاه‌های توکار دارای Bash مانند روتر‌ها، دوربین‌های آنلاین و … می‌توانند آسیب‌پذیر باشند.

ریشه‌ی این آسیب‌پذیری چیست؟

Bash به کاربر این قابلیت را می‌دهد که متغیر و یا توابعی (Environment Variable) را تعریف کند که در بین چند Instance از Bash به اشتراک گذاشته شود. ریشه‌ی این باگ در زمان تجزیه (Parse) تعریف تابع می‌باشد. هنگامی که یک تابع به صورت زیر تعریف شود:

VAR='() { :; }; /bin/pwd' bash -c ""

مفسر Bash در تشخیص اتمام تعریف تابع دچار خطا می‌شود. در زمان اجرا شدن Bash این متغیر بارگزاری می‌شود و رشته‌ی بعد از کارکتر ; را اجرا می‌کند. در مثال بالا اجرای /bin/pwd مسیر جاری نمایش داده می‌شود.

بهره‌برداری از این آسیب‌پذیری چگونه امکان‌پذیر است؟

در اینجا منظور از بهره‌برداری، بهره برداری از راه دور می‌باشد؛ یعنی حالتی که نفوذگر دسترسی به سیستم قربانی نداشته باشد. در این حالت باید از طریقی نفوذگر بتواند یک Environment Variable (متغیر محیطی) دستکاری شده را در سیستم قربانی تنظیم کند. با این شرایط بیشترین احتمال برای بهره‌برداری از این آسیب‌پذیری از راه دور از طریق یک CGI Script آسیب‌پذیر خواهد بود. در این شرایط نفوذگر با ارسال یک درخواست دستکاری شده که حاوی دستوراتی خطرناک است می‌تواند کنترل کامل سیستم قربانی را در دست بگیرد. برای مثال بدون دسترسی به سیستم‌ قربانی، از راه دور با ارسال یک درخواست می‌توان هر دستوری را در سیستم قربانی اجرا کرد. مثلاً در یک CGI Script آسیب‌پذیر مانند مثال زیر:

#!/bin/bash
echo "Content-type: text/html"

echo ""
echo '<html>'
echo '<head>'
echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">'
echo '<title>Test</title>'
echo '</head>'
echo '<body>'
/usr/bin/env
echo '</body>'
echo '</html>'
exit 0

با ارسال یک درخواست که مقدار User-Agent در آن تغییر یافته است می‌توان محتوای فایل /etc/passwd را خواند.

curl -A "() { foo;};echo;/bin/cat /etc/passwd" http://example/vulnerable.cgi

آیا من آسیب‌پذیر هستم؟

اگر سیستم‌عامل شما از خانواده Linux و یا OS X است دستور زیر را در خط فرمان وارد کنید. اگر متن You are vulnerable!! را مشاهده کردید یعنی نسخه‌ی آسیب‌پذیر Bash بروی سیستم‌عامل شما نصب شده است.

VAR='() { :; }; echo "You are vulnerable!!"' bash -c ""

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

env X='() { (a)=>\' sh -c "echo date";

چگونه باید آسیب‌پذیری را رفع کنم؟

برای رفع آسیب‌پذیری باید نرم‌افزار Bash را آپدیت کنید. با توجه به نرم‌افزار مدیریت بسته‌ها (Package Manager) نصب شده روی سیستم‌تان باید این کار را انجام دهید. مثلاً در Ubuntu:

apt-get update; apt-get upgrade;

اگر آپدیت توسط نرم‌افزار مدیریت بسته‌ها شناسایی نشد از دستور زیر استفاده کنید:

wget http://ftp.gnu.org/gnu/bash/bash-4.3.tar.gz
tar zxvf bash-4.3.tar.gz
cd bash-4.3
./configure
make
make install

در سیستم‌عامل OS X :

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew update
brew install bash
sudo sh -c 'echo "/usr/local/bin/bash" >> /etc/shells'
chsh -s /usr/local/bin/bash