Идеальный сервер - Fedora 14 x86_64 [ISPConfig 3]

Содержание материала

Звезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активна
 

Установка mod_php, mod_fcgi/PHP5, и suPHP

ISPConfig 3 позволяет использовать mod_php, mod_fcgi/PHP5, cgi/PHP5, и suPHP за основу сайта.

Мы можем установить Apache2, mod_php5, mod_fcgid, и PHP5 следующим образом:

  • yum install php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-mssql php-snmp php-soap php-tidy curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel mod_fcgid php-cli httpd-devel

Далее мы открыты /etc/php.ini ...

  • nano /etc/php.ini

... и изменим сообщений об ошибках (так, что бы уведомления не показывались больше) и раскомментируем cgi.fix_pathinfo = 1 :

[...]
;error_reporting = E_ALL & ~E_DEPRECATED
error_reporting = E_ALL & ~E_NOTICE
[...]
; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI.  PHP's
; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok
; what PATH_INFO is.  For more information on PATH_INFO, see the cgi specs.  Setting
; this to 1 will cause PHP CGI to fix its paths to conform to the spec.  A setting
; of zero causes PHP to behave as before.  Default is 1.  You should fix your scripts
; to use SCRIPT_FILENAME rather than PATH_TRANSLATED.
; http://www.php.net/manual/en/ini.core.php#ini.cgi.fix-pathinfo
cgi.fix_pathinfo=1
[...]
  • nano /etc/php.ini

Далее установим suPHP:

  • cd /tmp
  • wget http://www.suphp.org/download/suphp-0.7.1.tar.gz
  • tar xvfz suphp-0.7.1.tar.gz
  • cd suphp-0.7.1/
  • ./configure --prefix=/usr --sysconfdir=/etc --with-apr=/usr/bin/apr-1-config --with-apxs=/usr/sbin/apxs --with-apache-user=apache --with-setid-mode=owner --with-php=/usr/bin/php-cgi --with-logfile=/var/log/httpd/suphp_log --enable-SUPHP_USE_USERGROUP=yes
  • make
  • make install

Затем мы добавляем suPHP модуль для нашей конфигурации Apache ...

  • nano /etc/httpd/conf.d/suphp.conf
LoadModule suphp_module modules/mod_suphp.so

... и создадим файл /etc/suphp.conf следующим образом:

  • nano /etc/suphp.conf
[global]
;Path to logfile
logfile=/var/log/httpd/suphp.log

;Loglevel
loglevel=info

;User Apache is running as
webserver_user=apache

;Path all scripts have to be in
docroot=/

;Path to chroot() to before executing script
;chroot=/mychroot

; Security options
allow_file_group_writeable=true
allow_file_others_writeable=false
allow_directory_group_writeable=true
allow_directory_others_writeable=false

;Check wheter script is within DOCUMENT_ROOT
check_vhost_docroot=true

;Send minor error messages to browser
errors_to_browser=false

;PATH environment variable
env_path=/bin:/usr/bin

;Umask to set, specify in octal notation
umask=0077

; Minimum UID
min_uid=100

; Minimum GID
min_gid=100

[handlers]
;Handler for php-scripts
x-httpd-suphp="php:/usr/bin/php-cgi"

;Handler for CGI-scripts
x-suphp-cgi="execute:!self"

Наконец, мы перезагрузить Apache:

  • /etc/init.d/httpd restart

WebDAV

WebDAV уже должен быть включен, для проверки этого, откройте /etc/httpd/conf/httpd.conf и убедитесь, что следующие три модуля активных:

  • nano /etc/httpd/conf/httpd.conf
[...]
LoadModule auth_digest_module modules/mod_auth_digest.so
[...]
LoadModule dav_module modules/mod_dav.so
[...]
LoadModule dav_fs_module modules/mod_dav_fs.so
[...]

Если Вам необходимо изменить /etc/httpd/conf/httpd.conf, не забудьте перезапустить Apache после этого:

  • /etc/init.d/httpd restart

Установим PureFTPd

PureFTPd может быть установлена с помощью следующей команды:

  • yum install pure-ftpd

Затем создайте автозапуск PureFTPd:

  • chkconfig --levels 235 pure-ftpd on
  • /etc/init.d/pure-ftpd start

Теперь мы настроим PureFTPd чтобы FTP через TLS сессию. FTP является очень небезопасным протоколом, потому что все пароли и все данные передаются в открытом виде. С помощью TLS, все связи могут быть зашифрованы, что делает FTP гораздо более безопасным.

Чтобы установить OpenSSL нужная TLS, мы запустим:

  • yum install openssl

Откроем /etc/pure-ftpd/pure-ftpd.conf ...

  • nano /etc/pure-ftpd/pure-ftpd.conf

Если вы хотите разрешить FTP и TLS сессии, набор TLS к 1:

[...]
# This option can accept three values :
# 0 : disable SSL/TLS encryption layer (default).
# 1 : accept both traditional and encrypted sessions.
# 2 : refuse connections that don't use SSL/TLS security mechanisms,
#     including anonymous sessions.
# Do _not_ uncomment this blindly. Be sure that :
# 1) Your server has been compiled with SSL/TLS support (--with-tls),
# 2) A valid certificate is in place,
# 3) Only compatible clients will log in.

TLS                      1
[...]

Для того чтобы использовать TLS, мы должны создать SSL-сертификат. Я создаю его в /etc/ssl/private/ , поэтому я создаю этот каталог первым:

  • mkdir -p /etc/ssl/private/

После этого мы можем генерировать SSL сертификат следующим образом:

  • openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
Название страны (2 буквенный код) [XX]: - Введите название страны (например, "RU")
Государство или название провинции (полное имя) []: - Введите государства или название провинции
Местность имя (например, города) [по умолчанию Городе]: - Введите ваш город
Название организации (например, компании) [по умолчанию ООО]: - Введите название организации (например, название Вашей компании)
Подразделение Название (например, раздел) []: - Введите Организационные Название группы (например, "ИТ-отдел")
Общее имя (например, ваше имя или имя хоста сервера вашего) []: - Введите полное доменное имя системы (например, "server1.example.com")
Электронный адрес: []: - Введите адрес электронной почты

Изменение разрешения сертификата SSL:

  • chmod 600 /etc/ssl/private/pure-ftpd.pem

Наконец перезапустите PureFTPd:

  • /etc/init.d/pure-ftpd restart

Вот и все. Теперь вы можете попробовать подключиться с помощью вашего FTP-клиента, однако, вы должны настроить свой FTP-клиента для использования TLS - например с FileZilla.

Установка BIND

Мы можем установить BIND следующим образом:

  • yum install bind bind-utils

Затем откроем /etc/sysconfig/named ...

  • nano /etc/sysconfig/named

... и закомментируйте ROOTDIR=/var/named/chroot строку:

# BIND named process options
# ~~~~~~~~~~~~~~~~~~~~~~~~~~
# Currently, you can use the following options:
#
# ROOTDIR="/var/named/chroot"  --  will run named in a chroot environment.
#                            you must set up the chroot environment
#                            (install the bind-chroot package) before
#                            doing this.
#       NOTE:
#         Those directories are automatically mounted to chroot if they are
#         empty in the ROOTDIR directory. It will simplify maintenance of your
#         chroot environment.
#          - /var/named
#          - /etc/pki/dnssec-keys
#          - /etc/named
#          - /usr/lib64/bind or /usr/lib/bind (architecture dependent)
#
#         Those files are mounted as well if target file doesn't exist in
#         chroot.
#          - /etc/named.conf
#          - /etc/rndc.conf
#          - /etc/rndc.key
#          - /etc/named.rfc1912.zones
#          - /etc/named.dnssec.keys
#          - /etc/named.iscdlv.key
#
#       Don't forget to add "$AddUnixListenSocket /var/named/chroot/dev/log"
#       line to your /etc/rsyslog.conf file. Otherwise your logging becomes
#       broken when rsyslogd daemon is restarted (due update, for example).
#
# OPTIONS="whatever"     --  These additional options will be passed to named
#                            at startup. Don't add -t here, use ROOTDIR instead.
#
# KEYTAB_FILE="/dir/file"    --  Specify named service keytab file (for GSS-TSIG)
#ROOTDIR=/var/named/chroot

Затем мы создаем ссылку на запуск:

  • chkconfig --levels 235 named on

Мы не запускаем BIND сейчас, потому, что он должен быть вначале настроен - это будет сделано автоматически ISPConfig 3 в дальнейшем при установке.

Установка Vlogger, Webalizer, AWStats

Vlogger, Webalizer, AWStats могут быть установлены следующим образом:

  • yum install webalizer awstats perl-DateTime-Format-HTTP perl-DateTime-Format-Builder
  • cd /tmp
  • wget http://n0rp.chemlab.org/vlogger/vlogger-1.3.tar.gz
  • tar xvfz vlogger-1.3.tar.gz
  • mv vlogger-1.3/vlogger /usr/sbin/
  • rm -rf vlogger*

Установика Jailkit

Jailkit необходимо только тогда, когда вы хотите изолировать SSH пользователей. Она может быть установлена следующим образом (важно: Jailkit должна быть установлена до ISPConfig - она не может быть установлен впоследствии!):

  • cd /tmp
  • wget http://olivier.sessink.nl/jailkit/jailkit-2.13.tar.gz
  • tar xvfz jailkit-2.13.tar.gz
  • cd jailkit-2.13
  • ./configure
  • make
  • make install
  • cd ..
  • rm -rf jailkit-2.13*

Установика fail2ban

Это необязательно, но рекомендуется, так как монитор ISPConfig отображает его журнал:

  • yum install fail2ban
  • chkconfig --levels 235 fail2ban on
  • /etc/init.d/fail2ban start

Установите rkhunter

rkhunter могут быть установлены следующим образом:

  • yum install rkhunter

Обмениваться, хранить, передавать Ваши файлы стало просто как никогда.
yandex-disk
Читать подробнее: для чего Yandex-Диск проекту Mini-Server. Практика установки, настройки и использования сетевого хранилища на Ubuntu server LTS 12.04 в статье Резервное копирование сервера Ubuntu на Яндекс Диск.

>> Ubuntu 12.04 + Nginx Скачать сервер
>> Fedora 15 Скачать сервер
>> Простой Debian 6.0.6 Скачать сервер
>> CentOS 6.0 и
+ (5.6) другой
Скачать сервер
>> OpenSUSE 11.4
MAX
Скачать сервер

Вход на сайт

ВНИМАНИЕ!

Регистрация на сайте только по согласованию с администратором ресурса. Обращаться через форму обратной связи.