Опубликовано : admin в (Настройка сервера)

Вебсервер на CentOS 5.2

Заметочка как сконфигурировать полноценный вебсервер на компьютер с установленной ОС CentOS 5.2. Будем считать что ОС у нас уже установлена и мы имеем шелл доступ к ней. После установки на сервере будут установлены:

  • Web Server: Apache 2.2 with PHP 5.1.6
  • Database Server: MySQL 5.0
  • DNS Server: BIND9 (chrooted)
  • FTP Server: Proftpd
  • Webmin
  • Phpmyadmin

Итак поехали

Будем считать что наш сервер имеет ип 192.168.0.100

Первое, редактируем файл /etc/hosts и ставим chmod 0777 на папку /tmp

т.к. он зачастую оказывается пустым после установки, проверяем и устраняем…

chmod 0777 /tmp
vi /etc/hosts

Добавляем в него следующее

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               localhost.localdomain localhost
192.168.0.100           server1.example.com server1
::1             localhost6.localdomain6 localhost6

Если там уже есть подобные строчки, то ничего не трогаем, выходим

[:]
q!
[Enter]

Далее на время установки отключаем файрволл

system-config-securitylevel

Ставим галочку в положение Disable и перезагружаемся

reboot

Импортируем ключики для rpm

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

И обновляем систему

yum update

 

Теперь будем помаленьку ставить нужный софт

yum -y install fetchmail wget bzip2 unzip zip nmap openssl lynx fileutils ncftp gcc gcc-c++

Чтобы не париться можно поставить ВСЕ доступные библиотеки

yum -y install *lib lib*

Их будет много, ждём…

После завержения ставим BIND

yum install bind*

И запускаем его

chmod 755 /var/named/
chmod 775 /var/named/chroot/
chmod 775 /var/named/chroot/var/
chmod 775 /var/named/chroot/var/named/
chmod 775 /var/named/chroot/var/run/
chmod 777 /var/named/chroot/var/run/named/
cd /var/named/chroot/var/named/
ln -s ../../ chroot
cp /usr/share/doc/bind-9.3.4/sample/var/named/named.local /var/named/chroot/var/named/named.local
cp /usr/share/doc/bind-9.3.4/sample/var/named/named.root /var/named/chroot/var/named/named.root
touch /var/named/chroot/etc/named.conf
chkconfig --levels 235 named on
/etc/init.d/named start

Переходим к MySQL

yum install mysql*

Помещаем в автостарт и запускаем

chkconfig --levels 235 mysqld on
/etc/init.d/mysqld start

Для того чтобы ваша база была доступна только вашему серверу, редактируем файл

vi /etc/my.cnf

Закомментируем там одну строчку

[...]
#skip-networking
[...]

и выйдем

[:]
q!
[Enter]

Установим рут пароль

mysqladmin -u root password yourrootsqlpassword
mysqladmin -h server1.example.com -u root password yourrootsqlpassword

И перезапустим дабы убедиться что всё прошло нормально

/etc/init.d/mysqld restart

Установим вебслужбы

yum -y install php* curl* perl* ruby* ImageMagick

Поместим в автозагрузку Apache

chkconfig --levels 235 httpd on

Установим Proftpd

yum remove vsftpd
yum -y install proftpd

Поместим в автозагрузку

chkconfig --levels 235 proftpd on

Запустим, чтобы убедится что всё работает

/etc/init.d/proftpd start

Установим webmin

wget http://switch.dl.sourceforge.net/sourceforge/phpmyadmin/phpMyAdmin-2.11.9.2-all-languages.tar.gz
gunzip phpMyAdmin-2.11.9.2-all-languages.tar.gz
tar -xf phpMyAdmin-2.11.9.2-all-languages.tar
ln -s /home/phpMyAdmin-2.11.9.2-all-languages /home/phpMyAdmin

Включим http авторизацию

vi phpMyadmin/config.inc.php

<?php
$cfg['blowfish_secret'] = 'your_secret_string'; $i=0;
$i++;
$cfg['Servers'][$i]['auth_type'] = 'http';
?>

Для того чтобы PhpMyAdmin был виден из вне, добавим в конфиг вебсервера(/etc/httpd/conf/httpd.conf) строку:

Alias /phpMyAdmin/ "/home/phpMyAdmin/"

Готово!

Оставить комментарий