نمایش نتایج: از شماره 1 تا 10 , از مجموع 29

موضوع: کانفیگ سرور با کنترل پنل دایرکت ادمین

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    کاربر اخراج شده
    تاریخ عضویت
    Sep 2012
    نوشته ها
    258
    تشکر تشکر کرده 
    190
    تشکر تشکر شده 
    141
    تشکر شده در
    114 پست

    پیش فرض کانفیگ سرور با کنترل پنل دایرکت ادمین

    سلام

    لطفا ببینید این آموزش درست هست؟

    مواردی که اینجا هست از چندین وب سایت جمع آوری شده

    رو وی پی اس انجام دادم

    فقط یک وب سایت میزبانی میشه




    --------------------------------------------------------------------------------


    اول باید selinux رو خاموش کنید (در وی پی اس های اوپن وی زد نیازی به انجام اینکار نیست)




    در SSH بزنید : setup


    در صفحه ای که میاد برید به قسمت Firewall configuration و بعد یه دور کلید tab رو بزنید تا بیاید روی run tools و بعد اینتر بزنید بعد در صفحه ای که میاد برید رو Disabled (با زدن یه بار دکمه فلش راست کیبرد) و بعد کلید space رو بزنید بعد اگه یه بار دیگه کلید tab رو بزنید میاد تو قسمت SELinux بعد بیاید رو Disabled و دوباره کلید space رو بزنید بعد یه tab بزنید تا بیاید رو OK بعد اینتر بزنید و دوباره بر میگردید به صفحه اول این بار با زدن tab بیاد رو Quit و اینتر کنید




    نصب
    yum install nano
    yum install flex
    yum install perl-libwww-perl
    yum update -y
    yum install gcc-c++ gcc automake -y
    wget http://directadmin.com/setup.sh
    chmod +x setup.sh
    sh setup.sh
    Please enter your Client ID :
    در زمان تهیه لایسنس در اختیار شما قرار داده میشود


    Please enter your License ID :
    در زمان تهیه لایسنس در اختیار شما قرار داده میشود


    Enter your hostname (FQDN) :
    نام هاست


    Is this correct? (y,n):

    y بزنید


    Enter the device name:
    venet0:0


    نام کارت شبکه سرور. در صورتی که از سرورهای اختصاصی یا سرورهای مجازی مبتنی بر Xen استفاده میکنید، معمولا لازم است عبارت eth0 و در صورتی که از سرورهای مجازی OpenVZ استفاده میفرمایید معمولا لازم است عبارت venet0:0 را وارد نمایید.


    Is xxx.xxx.xxx.xxx the IP in your license? (y,n) :

    اگر آی پی تصحیح است y بزنید


    DirectAdmin will now be installed on: Enterprise 5.9
    Is this correct? (must match license) (y,n) : در صورتی که سیستم عامل انتخاب شده در هنگام تهیه لایسنس با سیستم عامل ذکر شده در این پیام (Enterprise 5.9) تطابق دارد، عبارت y را وارد کنید.


    You now have 2 options for your apache/php setup.
    1: customapache: end-of-life software. Includes Apache 1.3, php 4 and frontpage. **Not recommended**. Will not work with newer OSs. Limited tech support.
    2: custombuild 1.1: newer software (recommended). Includes any Apache version, php 4, 5, or both in cli and/or suphp. Frontpage not available.
    Post any issues with custombuild to the forum: http://www.directadmin.com/forum/forumdisplay.php?f=61


    Enter your choice (1 or 2):
    عدد 2 را وارد کنید


    Would you like the default settings of apache 2.2 and php 5.2 cli? (y/n):

    در صورت استفاده از تنظیمات پیشفرض y بزنید


    Would you like to search for the fastest download mirror? (y/n):

    y بزنید


    قسمت Message System ایمیل خود را در Email a copy of all messages to وارد کنید و تیک بزنید و سیو کنید
    در صفحه اصلی دایرکت ادمین برید به قسمت List Administrators و روی admin کلیک کنید
    admin's user data رو بزنید و در صفحه ای که میاد در قسمت ایمیل ، ایمیل خودتون رو وارد کنید و سیو کنید
    برگردید به صفحه اصلی دایرکت ادمین




    در قسمت Administrator Settings
    تیک گزینه های زیر رو بردارید


    Enable User Demo. Login: demo_user Password : demo
    Enable Reseller Demo. Login: demo_reseller Password : demo
    Enable Admin Demo. Login: demo_admin Password : demo
    حالا گزینه ها رو به صورتی که میدم تغییر بدید
    Max Request/Upload Size (bytes) ---->1048576000
    Prevent 127.0.0.1 from being Blacklisted --- > تیک بزنید
    Time before failed login count resets --->10
    Check domain owner for Subdomain creation ---->yes
    Enable Automatic Lost Password Recovery --->NO
    Blacklist IPs for excessive login attempts ---> تیک و 80 بزنید
    Difficult Password Enforcemen ---> Yes


    سیو کنید




    ----------------------------


    دستور زیر رو در ssh بزنیدد




    cd /usr/local/directadmin/custombuild

    حالا بزنید


    nano options.conf


    حالا مقادیر زیر رو تغییر بدین

    default_php=5
    php5_ver=5.2
    php4_cli=no
    php4_cgi=no
    php5_cli=yes
    php5_cgi=no
    zend=yes
    mysql=5.1
    mysql_inst=no
    mysql_backup=yes
    apache_ver=2.2
    phpmyadmin=yes
    atmail=no
    squirrelmail=yes
    roundcube=yes
    uebimiau=no
    exim=no
    spamassassin=no
    mail-header-patch=yes
    dovecot=yes
    awstats=no
    webalizer=no
    proftpd=no
    pureftpd=yes
    با کلیدهای Ctrl + X سیو و خارج شوید
    حالا دستور زیر رو بزنید و صبر کنید تا کارش انجام بشه


    ./build all

    دستور زیر رو در ssh بزنید


    nano /usr/local/lib/php.ini

    با کلیدهای Ctrl + W کلمه disable_functions را پیدا کنید و فاکشنهای خطرناک را مسدود کنید


    "apache_child_terminate, apache_get_modules, apache_note, apache_setenv, backtick, bzopen, bzread, bzwrite, c99_buff_prepare, c99_sess_put, c99fsearch, c99ftpbrutecheck, c99getsource, c99sh_getupdate, c99shexit, cat, chgrp, chown, closelog, cmd, crack_check, crack_closedict, crack_getlastmessage, crack_opendict, ctrl_dir, datasec, debugge_on, debugger_off, define_s yslog_variables, disk_free_space, disk_total_space, diskfreespace, dl, dos_conv, e_ini_file, escapeshellarg, escapeshellcmd, exec,filegroup, fileowner, fileperms, find, fpassthru, ftp_exec, get_current_user, get_dir, getmygid, getmyuid, getrusage, highlight_file, hypot, id, ilegetcontents, ini_ get_all, ini_alter, ini_restore, ini_set, inurl, leak, listen, ln, ls, mysql_li, netscript, old_offset, passthru, pclose, pcntl_exec, perl, perm, pfsockopen, pg_host, php_ini_scanned_files, php_uname, phpinfo, popen, popens, pos, posame, posix_access, posix_ctermid, posix_get_last_error, posix_getcwd, posix_getegid, posix_geteuid, posix_getgi, posix_getgrgid, posix_getgrnam, posix_getgroups, posix_getlogin, posix_getpgid, posix_getpgrp, posix_getpid, posix_getppid, posix_getpwnam, posix_getpwuid, posix_getrlimit, posix_getservbyname, posix_getsid, posix_getuid, posix_initgroups, posix_isatty, posix_kill, posix_mkfifo, posix_mknod, posix_setegid, posix_seteuid, posix_setgid, posix_setpgid, posix_setsid, posix_setuid, posix_strerror, posix_times, posix_ttyname, posix_uname, posixc, pro, c_close, proc_get_status, proc_nice, proc_open, proc_terminate, ps_aux, psockopen, rar_open, root, rsync, safe_mode, server_software, shell-exec, shell_exec, shellcode, show_source, suExec, symlink, system, systemroot, t_dbs, tmp, virtual, wget, whoami, zip_read"


    allow_url_fopen --> Off
    register_globals --> Off
    enable_dl --> Off
    display_errors --> Off
    display_startup_errors --> Off
    safe_mode --> Off
    log_errors --> On
    expose_php --> Off
    magic_quotes_gpc --> On
    magic_quotes_sybase --> Off
    open_basedir --> On



    بیشترین مدت زمان اجرای اسکریپت max_execution_time = 60


    حداکثر زمان مصرف شده جهت تجزیه ورودی max_input_time = 60


    بیشترین مقدار استفاده یک اسکریپت از حافظه memory_limit = 64M


    max_file_uploads = 32


    بیشترین حجم مجاز برای آپلود max_upload_filesize = 600M


    حداکثر حجم ارسال post_max_size = 8M


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


    from="john@doe.com" داخل " " ایمیل خود را تایپ کنید

    با کلیدهای Ctrl + X سیو و خارج شوید


    ----------------------------


    دستور زیر رو در ssh بزنی




    nano /etc/ssh/sshd_config

    با زدم دکمه CTRL + W از کیبرد عبارت UseDNS رو پیدا کنید اگر کنار # بود بردارید و مقدارشو به no تغییر بدید (اگه جلوش نوشته بود no به هیچی دست نزنید و اگه نوتشه yes فقط اون yes رو به no تبدیل کنید


    در جایی که نوشته port 22 باید # رو بردارید و بجای عدد ۲۲ ، یه پورت آزاد مثلا ۲۰۱۱ رو قرار بدید . یادتون باشه که باید این پورت رو در فایروال ، آزاد کنیم.


    با کلیدهای Ctrl + X سیو و خارج شوید


    ----------------------------




    امن کردن /tmp:




    cd /dev

    ساخت 2000 مگابایت فضا ذخیره سازی:




    dd if=/dev/zero of=tmpMnt bs=1024 count=2000000

    ساخت فایل سیستم ext :




    /sbin/mke2fs /dev/tmpMnt

    ایجاد یک پشتیبان:




    cp -R /tmp/ /tmp_backup

    mount کردن فایل سیستم جدید با noexec:




    mount -o loop,rw,nosuid,noexec /dev/tmpMnt /tmp

    سطح مجوز را هم تغییر دهید:




    chmod 0777 /tmp

    پشتیبانی را که تهیه کرده بودیم، کپی میکنیم:




    cp -R /tmp_backup/* /tmp/

    پشتیبان را حذف میکنیم:




    rm -rf /tmp_backup

    امن کردن /var/tmp :
    تهیه یک پشتیبان:




    mv /var/tmp /var/tmpbck

    آدرس دهی میکنیم:




    ln -s /tmp /var/tmp

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




    cp /var/tmpbck/* /tmp/

    امن کردن /dev/shm :
    فایل زیر را با ویرایشگر باز میکنیم:
    اگر ویرایشگر nano را نصب ندارید، با دستور زیر نصب کنید.




    nano /etc/fstab

    مقدار زیر را پیدا کنید :




    none /dev/shm tmpfs defaults,rw 0 0

    مقدار زیر را جایگزین مقدار فوق میکنیم:




    none /dev/shm tmpfs defaults,nosuid,noexec,rw 0 0

    مجددا” mount میکنیم:




    mount -o remount /dev/shm

    و حالا یه بار سرور رو با دستور reboot ریبوت کنید


    ----------------------------


    نصب CSF

    yum -y install perl-libwww-perl.noarch


    wget http://www.configserver.com/free/csf.tgz


    tar -xzf csf.tgz


    cd csf


    sh install.directadmin.sh
    chmod 600 /etc/csf/csf.conf
    حالا باید یه ایمیل به سرور بدید تا سی اس اف از طریق اون با شما در ارتباط باشه
    برای این کار در اس اس اچ بزنید




    nano /root/.forward

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


    ----------------------------


    خوب نوبتی هم باشه نوبت کانفیگ apache هست. همونطور که گفتم تنظیمات apache و mysql به میزان رم و قدرت سی پی یو بستگی داره. مثلا برای یک وی پی اس با رم ۲۵۶ تا ۵۱۲ مگابایت ، کانفیگ زیر برای پروسس ها می تونه خوب باشه:



    Timeout 200
    KeepAlive On
    MaxKeepAliveRequests 200
    KeepAliveTimeout 3
    MinSpareServers 5
    MaxSpareServers 20
    StartServers 5
    MaxClients 25
    MaxRequestsPerChild 2000
    HostnameLookups Off
    البته شما می تونید بعد از یک دو روز از زمانی که سرور رو کانفیگ کردید با دستور free -m در محیط SSH مقدار رم خالی رو پیدا کنید و در صورتی که رم خالی داشتید مقادیر MaxClients و MaxSpareServers رو ارتقا بدید.




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

    /etc/httpd/conf/httpd.conf
    برای ویرایش مقادیری که گفتم به مسیر زیر برید:




    /etc/httpd/conf/extra/httpd-mpm.conf

    و دنبال این خط بگردید:




    <IfModule mpm_prefork_module>

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



    ServerLimit 2000
    KeepAlive On
    KeepAliveTimeout 60
    MaxClients 1600
    MaxSpareServers 200
    MinSpareServers 50
    این مورد رو در نظر داشته باشید که همه چیز به قدرت سرور یا وی پی اس شما بستگی داره.


    با دستور زیر می تونید تعداد آی پی هایی که به سرور شما متصل شدند رو در بیارید:


    netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -n

    البته بحث تنظیم apache خیلی پیچیده و مفصل هست و مدهای زیادی برای کنترل اون وجود داره که انشاالله در جلسات بعد ، در حد توانم اونا رو هم براتون آماده می کنم.


    --------------------


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


    در مورد کانفیگ mysql و apache باید این رو بدونیم که مقدار رم ما و نیز قدرت پردازنده CPU خیلی مهمه! و در واقع همه ی تنظیمات با توجه به اونا انجام میشه. البته برای کاربرد های مختلف هم کانفیگ ها متفاوت هست. مثلا کانفیگ این فایل ها برای سروری که مخصوص دانلود هست با سروری که مخصوص هاستینگ هست با سروری که مخصوص فقط یک سایت هست متفاوته!




    ما فرض رو بر این می زاریم که وی پی اس شما برای میزبانی چند سایت در نظر گرفته شده که معمولا بیشترین حالت رو شامل میشه. اول میریم تا فایل کانفیگ mysql رو ویرایش کنیم.


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


    nano /etc/nano.cnf

    حالا اگه مقداری داشت و چیزی داخلش بود پاک کنید و با مقادیر زیر اون رو جایگزین کنید:



    [mysqld]
    local-infile=0
    max_connections = 400
    key_buffer = 16M
    myisam_sort_buffer_size = 32M
    join_buffer_size = 1M
    read_buffer_size = 1M
    sort_buffer_size = 2M
    table_cache = 1024
    thread_concurrency=2
    thread_cache_size = 286
    interactive_timeout = 25
    wait_timeout = 1000
    connect_timeout = 10
    max_allowed_packet = 16M
    max_connect_errors = 10
    query_cache_limit = 1M
    query_cache_size = 16M
    query_cache_type = 1
    tmp_table_size = 16M
    skip-innodb
    [mysqld_safe]
    open_files_limit = 8192
    [mysqldump]
    quick
    max_allowed_packet = 16M
    [myisamchk]
    key_buffer = 32M
    sort_buffer = 32M
    read_buffer = 16M
    write_buffer = 16M
    [mysqlhotcopy]
    interactive-timeout






    این مقادیر در زمانی که رم شما بین ۲۵۶ تا ۵۱۲ مگ هست مناسبه و در حالتی که رم بیشتری دارید طبق آموزش خود دایرکت ادمین ، این فایل رو ادیت کنید.(در پایین این آموزش رو هم خواهم گفت. خطی که بولد کردم رو دقت کنید. مقدار این خط باید ۲ برابر تعداد هسته های سی پی یوی شما باشه. یعنی اگه دو هسته اختصاصی دارید این عدد باید ۴ باشه و … .




    حالا اگه مقدار رو شما بالا بود به کانفیگ زیر و توضیحات اون دقت کنید:


    [mysqld]
    local-infile=0
    skip-locking
    query_cache_limit=1M
    query_cache_size=64M // سی و دو مگابایت به ازای هر یک گیگ رم
    query_cache_type=1
    max_connections=500
    interactive_timeout=100
    wait_timeout=100
    connect_timeout=10
    thread_cache_size=128
    key_buffer=16M
    join_buffer=1M
    max_allowed_packet=16M
    table_cache=1024
    record_buffer=1M
    sort_buffer_size=2M // یک مگابایت به ازای هر یک گیگ رم
    read_buffer_size=2M // یک مگابایت به ازای هر یک گیگ رم
    max_connect_errors=10
    # تعداد سی پی یو ها ضرب در دو
    thread_concurrency=2
    myisam_sort_buffer_size=64M
    server-id=1
    [safe_mysqld]
    err-log=/var/log/mysqld.log
    open_files_limit=8192
    [mysqldump]
    quick
    max_allowed_packet=16M
    [mysql]
    no-auto-rehash
    #safe-updates
    [isamchk]
    key_buffer=64M // سی و دو مگابایت به ازای هر یک گیگ رم
    sort_buffer=64M
    read_buffer=16M
    write_buffer=16M
    [myisamchk]
    key_buffer=64M
    sort_buffer=64M
    read_buffer=16M
    write_buffer=16M
    [mysqlhotcopy]
    interactive-timeout
    این مقادیر در سایت دایرکت ادمین برای یک سرور با سیستم عامل سنت اُ اس و بیش از ۲ گیگ رم آمده است.
    ویرایش توسط afshinaz : March 14th, 2013 در ساعت 00:38

  2. تعداد تشکر ها ازafshinaz به دلیل پست مفید


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •