آموزش کانفیگ سرور لینوکس سنتوس و تنظیم DNS بدون پنل
در این آموزش ما قصد داریم تا اجزای لازم برای تنظیم یک vps با سیستم عامل centOS6 را تا نصب wordpress بدون استفاده از پنل (kloxo,webmin,ispconfig,directadmin,cPanel) دنبال کنیم و یک دامین (yoursite.ir) را به وب سرور خودمون متصل کنیم.
برای نصب پکیج های لازم از دستور زیر استفاده کنید:
کد HTML:
yum install bind* httpd php mysql mysql-server php-mysql php-gd php-imap php-ldap php-mbstring php-odbc php-pear php-xml php-xmlrpc php-cli perl -y
این دستور وب سرور و دیتابیس و php و سرویس دامنه را روی سرور شما نصب می کنه
بعد از این مرحله بوسیله دستورات زیر کاری میکنیم که سرویس هایی که نصب کردیم بعد از بوت شدن OS اجرا بشوند :
کد HTML:
chkconfig named on chkconfig httpd on chkconfig mysqld on
دیوار آتش Firewall لینوکس به طور پیش فرض فعال است و پورت های 80 و 53 که مربوط به سرویس دهی وب و دامنه است مسدود می باشد با دستورات زیر پورت های مورد نظر را باز می کنیم :
کد HTML:
iptables -I INPUT 4 -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT iptables -I OUTPUT 4 -m state --state NEW -m udp -p udp --sport 53 -j ACCEPT iptables -I INPUT 4 -m state --state NEW -m udp -p udp --sport 53 -j ACCEPT service iptables save
بعداً اگر مایل بودید می تونید پورت های دیگه ایی را هم باز کنید :
کد HTML:
Name Port Type FTP 21 tcp SSH 22 tcp SMTP 25 tcp DNS 53 tcp DNS 53 udp WWW 80 tcp POP3 110 tcp IMAP2 143 tcp SSL (www) 443 tcp
در این مرحله باید تنظیمان DNS را برای دامنه مفروض انجام بدید فرض کنید شما یک دامنه از nic.ir تهیه کردید ابتدا وارد کنترل پنلتون بشید و در قسمت کارگزار آدرس های زیر را وارد کنید :
کد HTML:
ns1.yoursite.ir ns2.yoursite.ir
و رکورد ها را ذخیره کنید و از پنل nic.ir خارج بشوید.
حالا برای تنظیمات روی سرور باید ابتدا فایل named.conf را باز کرده و zone جدید را تعریف کنیم:
باز کردن فایل :
کد HTML:
vi /etc/named.conf
اضافه کردن خطوط زیر به انتهای فایل :
کد HTML:
zone "yoursite.ir" { type master; file "/var/named/yoursite.ir"; };
و سپس باید به همه اجازه کوئری زدن بدیم و localhost را به any تغییر بدیم که در آخر فایل تنظیمات به این شکل در میاد :
//
کد HTML:
// named.conf // // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS // server as a caching only nameserver (as a localhost DNS resolver only). // // See /usr/share/doc/bind*/sample/ for example named configuration files. // options { listen-on port 53 { any; }; listen-on-v6 port 53 { ::1; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { any; }; recursion yes; dnssec-enable yes; dnssec-validation yes; dnssec-lookaside auto; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "." IN { type hint; file "named.ca"; }; include "/etc/named.rfc1912.zones"; include "/etc/named.root.key"; zone "yoursite.ir" { type master; file "/var/named/yoursite.ir"; };
سپس فایل zone را ایجاد می کنیم :
کد HTML:
vi /var/named/yoursite.ir
و عبارات زیر را داخلش می نویسیم :
کد HTML:
$ttl 38400 yoursite.ir. IN SOA yoursite. admin.yoursite.ir. ( 1350525412 10800 3600 604800 38400 ) yoursite.ir. IN A 192.168.0.2 www.yoursite.ir. IN A 192.168.0.2 mail.yoursite.ir. IN A 192.168.0.2 ftp.yoursite.ir. IN A 192.168.0.2 ns1.yoursite.ir. IN A 192.168.0.2 ns2.yoursite.ir. IN A 192.168.0.2 yoursite.ir. IN NS ns1.yoursite.ir. yoursite.ir. IN NS ns2.yoursite.ir. yoursite.ir. IN MX 10 mail.yoursite.ir.
که تنظیمات میل سرور و ftp و nameserver انجام شده شما تنها باید تمام آیپی های 192.168.0.2 را با آیپی vps خودتون عوض کنید و yoursite.ir را نام دامنه خودتون تغییر بدید .
سپس باید سرویس ها را اجرا کنید :
کد HTML:
service named start
اگر این سرویس درست اجرا نشد ctrl+c بزنید و دستورات زیر را اجرا :
کد HTML:
rndc-confgen -a -r /dev/urandom -t /var/named/chroot service named start
سپس :
کد HTML:
service httpd start service mysqld start
الان تنظیمات اولیه انجام شده و شما امکان نصب هر cms را دارید در این مرحله بهتر است که رمز دیتابیس خودتون را تغییر بدید که در حالت پیش فرض بدون پسورد نصب شده برای این امر دستور زیر را اجرا کنید:
/usr/bin/mysql_secure_installation
و اینتر بزنید و سپس رمز جدید خود را دوبار وارد کنید و به سوالات بعدی پاسخ دهید که y برای بیشتر گزینه ها مناسب است.
در این مرحله تنظیمات اولیه انجام شده و برای نصب یک cms ما نیاز به یک محیط ویژوال برای کار با دیتابیس داریم پس باید phpmyadmin را نصب کنیم.
ابتدا به مسیر زیر می رویم :
کد HTML:
cd /var/www/html
پکیج مربوطه را دانلود می کنیم :
کد HTML:
wget -c http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/3.4.9/phpMyAdmin-3.4.9-english.tar.gz /download
فایل را از حالت فشرده خارج می کنیم :
کد HTML:
tar xvfz phpMyAdmin-3.4.9-english.tar.gz
سپس تغیر نام :
کد HTML:
mv phpMyAdmin-3.4.9-english phpmyadmin
تغییر مسیر:
کد HTML:
cd /var/www/html/phpmyadmin
ایجاد فایل تنظیمات:
کد HTML:
cp config.sample.inc.php config.inc.php
باز کردن فایل تنظیمات:
کد HTML:
vi config.inc.php
تغییر
کد HTML:
$cfg['Servers'][$i]['auth_type']=’cookie’;
به
$
کد HTML:
cfg['Servers'][$i]['auth_type']=’http’;
و وارد کردن یوزر و پسورد برای تغییر دیتابیس می توانید root و رمزی که در مرحله قبل وارد کردید را درج کنید .
ریستارت کردن آپاچی :
کد HTML:
service httpd restart
باز کردن :
کد HTML:
http://192.168.0.2/phpMyAdmin
رمز و پسوردی که مرحله قبل وارد کردید را وارد کنید.
تمام شد!
اگر با اخطار 403 مواجه شدید :
403 Forbidden Error
کد HTML:
vi /etc/httpd/conf.d/phpMyAdmin.conf
و خطوط زیر را بهش اضافه کنید :
کد HTML:
<Directory /var/www/html/phpMyadmin> Order allow,deny Options Indexes Allow from all </Directory>
اگر بازم نشد سعی کنید selinux را غیر فعال کنید.
کد HTML:
vi /etc/selinux/config
تغییر
کد HTML:
SELINUX=enforcing
به
کد HTML:
SELINUX=disabled
برای نصب ورد پرس روی سرور باید ابتدا یک دیتابیس ایجاد کنیم که می شه با phpmyadmin یا mysql تحت کامند ایجاد کرد:
تا اینجا یک دیتابیس و یوزر با نام wordpress ایجاد کردیم و یک پسورد please+use+a+strong+password بهش اختصاص دادیم.
دانلود و نصب ورد پرس :
ساخت فایل کانفیگ و تنظیم آن:
خروجی دستور بالا را کپی کنید .
سپس فایل تنظیمات را باز می کنیم :
عبارات زیر را کانفیگ می کنیم :
و اینا را بر طبق چیزایی که کپی کردید تنظیم کنید :
کانفیگ کردن آپاچی :
و این خطوط را بهش اضافه کنید :
و سپس سرویس را ریستارت کنید :
خرید سرور مجازی
فروش سرور مجازی
کد HTML:
mysqladmin create wordpress mysql mysql> GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'please+use+a+strong+password'; mysql> FLUSH PRIVILEGES; mysql> quit
دانلود و نصب ورد پرس :
کد HTML:
cd /var/www/ mkdir wordpress cd wordpress curl -O http://wordpress.org/latest.tar.gz tar xvfz latest.tar.gz rm latest.tar.gz mv wordpress/ public mkdir logs public/wp-content/uploads public/wp-content/cache chown apache:apache logs public/wp-content/uploads public/wp-content/cache cd public/
کد HTML:
mv wp-config-sample.php ../wp-config.php curl https://api.wordpress.org/secret-key/1.1/salt/
سپس فایل تنظیمات را باز می کنیم :
کد HTML:
vi ../wp-config.php
کد HTML:
define('DB_NAME', 'wordpress'); define('DB_USER', 'wordpress'); define('DB_PASSWORD', 'enter+the+strong+password+you+defined'); define('DB_HOST', 'localhost');
کد HTML:
define('AUTH_KEY', 'pasted from clipboard'); define('SECURE_AUTH_KEY', 'pasted from clipboard'); define('LOGGED_IN_KEY', 'pasted from clipboard'); define('NONCE_KEY', 'pasted from clipboard'); define('AUTH_SALT', 'pasted from clipboard'); define('SECURE_AUTH_SALT', 'pasted from clipboard'); define('LOGGED_IN_SALT', 'pasted from clipboard'); define('NONCE_SALT', 'pasted from clipboard');
کد HTML:
vi /etc/httpd/conf.d/wordpress.conf
کد HTML:
NameVirtualHost *:80 <VirtualHost *:80> ServerAdmin admin@yoursite.ir DocumentRoot /var/www/wordpress/public ServerName yoursite.ir ErrorLog /var/www/wordpress/logs/error_log CustomLog /var/www/wordpress/logs/access_log common <Directory /var/www/wordpress/public/wp-content> Options FollowSymLinks for pretty permalink support RemoveHandler .php RemoveType text/html .php </Directory> </VirtualHost>
کد HTML:
service httpd restart
فروش سرور مجازی