Показаны сообщения с ярлыком apache. Показать все сообщения
Показаны сообщения с ярлыком apache. Показать все сообщения

понедельник, апреля 13, 2009

Apache, модуль mod_evasive, защита от ddos атаки.

Установка модуля: cd /usr/local/src
wget http://www.zdziarski.com/projects/mod_evasive/mod_evasive_1.10.1.tar.gz
tar -zxf mod_evasive_1.10.1.tar.gz
cd mod_evasive

Для apache 2.0.x

/usr/sbin/apxs -cia mod_evasive20.c

В файл httpd.conf добавим


DOSHashTableSize 3097
DOSPageCount 6
DOSSiteCount 100
DOSPageInterval 2
DOSSiteInterval 2
DOSBlockingPeriod 600


Для apache 1.3.x

/usr/local/apache/bin/apxs -cia mod_evasive.c

В httpd.conf добавим


DOSHashTableSize 3097
DOSPageCount 6
DOSSiteCount 100
DOSPageInterval 2
DOSSiteInterval 2
DOSBlockingPeriod 600


После инсталляции перегрузим apache
/etc/init.d/httpd restart

Конфигурация по умолчанию блокирует адрес атакующего на 10 минут.

вторник, марта 27, 2007

Установка mysql5, apache1.3, mod_perl, php4, php4_extensions из портов freebsd6.2.

Ставим MYSQL5

cd /usr/ports/databases/mysql50-server
make install clean

Добавим в /etc/rc.conf строку mysql_enable=”YES”
Дальше http://argo-uln.blogspot.com/2006/07/mysql.html

Ставим APACHE13

cd /usr/ports/www/apache13
make install clean

Добавим в /etc/rc.conf строку apache_enable=”YES”
Дальше http://argo-uln.blogspot.com/2006/07/apachephpperlssl.html

Ставим MOD_PERL

cd /usr/ports/www/mod_perl
make install clean


Ставим PHP4

cd /usr/ports/lang/php4
make config

Выбираем опции
X CLI
X CGI
X APACHE
X SUHOSIN
X FASTCGI
X PATHINFO
X ZLIB
make install clean

Ставим PHP4_EXTENSIONS

cd /usr/ports/lang/php4_extensions
make config

Выбираем опции
X CTYPE
X CURL
X GD
X GETTEXT
X LDAP
X MYSQL
X OVERLOAD
X PCRE
X PDFLIB
X POSIX
X SESSION
X TOKENIZER
X XML
X ZIP
X ZLIB
make install clean

Чтобы активировать модули apache, даем команду
apachectl graceful




Обсудить сообщение можно в форуме admins.arg.su

пятница, августа 18, 2006

RewriteEngine ON

Взято из учебника Скотт Хокинс "Администрирование Web-сервера Apache и руководство по электронной коммерции"

Задача: преобразовать ссылку http://www.example1.com/~userguy в http://www.example1.com/usr/userguy

Решение:
В файл .htaccess пишем

RewriteEngine ON
RewriteRule ^/~([^/]+)/?(.*) /usr/$1/$2 [R]

Объяснение:
^ если вне фигурных скобок то начало строки (в данном случае мы пропускаем http://www.example1.com и анализировать начинаем с /~)
Далее конструкция ([^/]+).
Первое включение () - это шаблон, который потом подставляется в переменную $1.
Обратите внимание [^/] - это любой символ кроме косой черты, а плюсик после это значит таких символов может быть один или больше.
Дальше опять слеш /.
Знак ? после него, значит может быть один слеш или его может вообще не быть.
Далее (.*), заменяется $2.
. (точка) - любой символ, а * - или ноль или сколько угодно символов в конце.
[R] - инициировать внешнее переназначение.




Обсудить сообщение можно в форуме admins.arg.su

пятница, июля 28, 2006

Установка Apache+PHP+PERL+SSL

Создадим папку
mkdir /usr/local/src

Apache тянем с http://www.apache.org/
mod_perl с http://perl.apache.org/
mod_ssl с http://www.modssl.org/
php с http://php.net/
FreeBSD.layout с http://matt.simerson.net/computing/www/apache.layout

Для PHP тянем
zlib с www.gzip.org/zlib/ --> ./configure -prefix=/usr/local/zlib --> make install
GD --> /usr/port/grafics/gd --> make install
curl --> /usr/port/ftp/curl --> make install
Распаковываем Apache, mod_perl, mod_ssl, PHP в папку /usr/local/src
cd apache_1.3.34 (к примеру)
./configure
cd php-4.4.1

./configure --with-apache=../apache_1.3.34 --with-mysql=/usr/local --with-gd=/usr/local --with-zlib=/usr/local/zlib --enable-force-cgi-redirect --enable-sockets --with-mod-charset --with-xml --with-curl=/usr/local/lib


make
make install

Копируем из исходников php.ini в папку /usr/local/lib


cd mod_perl-1.29

/usr/bin/perl Makefile.PL APACHE_SRC=../apache-1.3.34 DO_HTTPD=1 USE_APACI=1 APACHE_PREFIX=/usr/apache_ssl EVERYTHING=1


make
make install


cd mod-ssl-2.8....
./configure --with-apache=../apache_1.3.34 --activate-module=src/modules/php4/libphp4.a

cd apache_1.3.34 (если надо будет пересобрать apache нужно удалить httpd)


./configure --with-layout=../FreeBSD.layout:FreeBSD --with-perl=/usr/bin/perl --activate-module=src/modules/php4/libphp4.a --activate-module=src/modules/perl/libperl.a --enable-module=ssl --server-uid=www --server-gid=www --activate-module=src/modules/standard/mod_rewrite.c --activate-module=src/modules/standard/mod_vhost_alias.c


make
make certificate TYPE=custom
make install


ee /usr/local/etc/rc.d/startssl.pl

содержание startssl.pl


#!/usr/bin/perl
print "<пароль для сертификата>\n";


chmod +x /usr/local/etc/rc.d/startssl.pl

ee /usr/local/etc/rc.d/apache.sh

содержимое apache.sh


#!/bin/sh
/usr/local/sbin/apachectl starssl


Редактируем /usr/local/etc/apache/httpd.conf


SSLPassPhraseDialog exec:/usr/local/etc/rc.d/startssl.pl

Server admin name@company.com

DocumentRoot "/usr/local/www"

<directory>
Options FollowSymLinks
AllowOverride All
</directory>

<directory>
Options FollowSymLinks ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</directory>

<ifmodule c="">
DirectoryIndex index.html index.php
</ifmodule>

UseCanonicalName Off

#В секции LogFormat все строки ремим и пишем свою
LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon

CustomLog /var/log/access log vcommon

#Секцию aliases ремим

#Находим AddType application/x-tar .tgz после добавим

AddType application/x-httpd-php .php
AddTipe application/x-httpd-php-source .phps

#Section3: Virtual Hosts
VirtualDocumentRoot /usr/local/www/%0/html
VirtualScriptAlias /usr/local/www/%0/cgi-bin




Обсудить сообщение можно в форуме admins.arg.su

понедельник, июля 10, 2006

Немного о 301-м редиректе

Взято отсюда http://www.seoblog.biz/5/

Вкратце остановлюсь на некоторых основных моментах:

1. Самое простое — редирект с одной страницы на другую:
в .htaccess пишем:

Redirect 301 /old-file.html http://myserver.com/new-file.html


2. Более сложный вариант, когда сайт переносится, скажем, с одного домена на другой, и при этом сохраняется структура УРЛов:


RewriteEngine ON
RewriteRule ^(.*)$ http://mynewdomain.com/$1 [R=301,L]


Таким образом, если кто-то запрашивает страницу http://domain.com/asdf.html, его будет редиректить (301) на http://mynewdomain.com/asdf.html

3. Если же сайт, к примеру, переносится, а структура УРЛов меняется, то есть смысл использовать следующий метод:


RewriteEngine ON
RewriteRule /.* http://mynewdomain.com/ [R=301,L]


При этом все запросы со старого домена будут вести на главную страницу нового.

4. Еще один интересный момент, если вы хотите изменить разрешение файлов (например, с html на htm):


RedirectMatch 301 (.*)\.htm$ http://myserver.com$1.html




Обсудить сообщение можно в форуме admins.arg.su