CentOS 6.5 Связка Nginx 1.8 + Apache2+mod_rpaf 0.8 (ISP manager)

Подключаем репу

echo "[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/$basearch/
gpgcheck=0
enabled=1" > /etc/yum.repos.d/nginx.repo

Чистим

cd /usr/local/ispmgr
sbin/pkgctl -D -m ispmgr cache

killall -9 -r ispmgr

Но сначала нужно поставить mod_rpaf

yum install mod_rpaf

Если не ставится, то так
# Для 32bit

yum localinstall http://www6.atomicorp.com/channels/atomic/centos/6/i386/RPMS/mod_rpaf-0.8-3.el6.art.i686.rpm

# Для 64bit

yum localinstall http://www6.atomicorp.com/channels/atomic/centos/6/x86_64/RPMS/mod_rpaf-0.8-3.el6.art.x86_64.rpm

НО
В связи с тем что популярный репозиторий centalt благополучно загнулся, пришлось искать альтернативу для быстрой установки rpaf.
На просторах интернета нашелся mod_extract_forwarded, установка проста (должен быть подключен remi repo)

yum install mod_extract_forwarded

В файлик /etc/httpd/conf.d/mod_extract_forwarded.conf прописываем

LoadModule extract_forwarded_module modules/mod_extract_forwarded.so
MEForder refuse,accept
MEFrefuse all
MEFaccept 127.0.0.1 xx.xx.xx.xx yy.yy.yy.yy
apachectl graceful

или

/etc/init.d/httpd restart

Далее устанавливаем nginx в пенели возможности, он сам все настроит и пропишет и остальные действия можно не выполнять. Также можно установить и активировать его командами

/usr/local/ispmgr/sbin/pkgctl cache
/usr/local/ispmg/sbin/pkgctl install nginx
/usr/local/ispmgr/sbin/pkgctl activate nginx
/usr/local/ispmgr/sbin/pkgctl cache
killall -9 -r ispmgr

Создается файлик — если нет — добавляем руками:

/etc/httpd/conf.d/ файл rpaf.conf

с содержимым

LoadModule rpaf_module modules/mod_rpaf-2.0.so
RPAFenable On
RPAFproxy_ips 127.0.0.1 xx.xx.xx.xx yy.yy.yy.yy

где xx.xx.xx.xx и yy.yy.yy.yy– IP адреса вашего сервера. Если на сервере несколько адресов, то прописываем их по аналогии через пробел.

Либо пример нового конфига

LoadModule rpaf_module modules/mod_rpaf.so
<IfModule mod_rpaf.c>
  RPAF_Enable       On
  RPAF_ProxyIPs     127.0.0.1 xx.xx.xx.xx yy.yy.yy.yy
  RPAF_Header       X-Forwarded-For
  RPAF_SetHostName  On
  RPAF_SetHTTPS     On
  RPAF_SetPort      On
</IfModule>

Перезапускаем Apache:

service httpd restart

В nginx внутри блока http {} должны быть указаны строки:

proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

если вы изменяли nginx.conf, следует перезапустить nginx:

service nginx restart

Проверяем работособность. Создаем php файл со следующим содержимым и на экране у нас должен высветится реальный IP:

Устанавливаем через панель isp во вкладке возможности, либо командой

/usr/local/ispmgr/sbin/pkgctl activate nginx

В панель теперь заходим через новый порт
http://xx.xx.xx.xx:81/manager/ispmgr

echo $_SERVER[‘REMOTE_ADDR’];

Обновлено: 27/01/2017 — 23:52

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *