Настройка mod_rpaf, remoteip

Автор Yarik, 03 декабря 2015, 12:59:01

« назад - далее »

0 Пользователи и 2 гостей просматривают эту тему.

Yarik

Ситуёвина в общем известная,одинаковый айпи в онлайн...
Мод стоит как оказалось изначально,не могу настроить.Конфиг
< IfModule mod_rpaf . c>
# Включаем модуль
RPAFenable On
# Приводит в порядок X-Host
RPAFsethostname On
# Адрес фронтенда (nginx)
RPAFproxy _ ips 127.0.0.1 айпи сервера
</ IfModule >
Ребутим apache
Не работает хоть ты тресни,одинаковый айпи у всех.
Хм,заметил что это началось после включения мемкеша...Может конфликт?

GeorG

А сам модуль включен, в nginx параметры прописаны?

И что у вас тут за два пробела между точкой?
< IfModule mod_rpaf . c>
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

Yarik

@GeorG а можно поподробней про включение в nginx?..Сейчас почитаю тоже...
Пробелы я видать случайно поставил,в самом файле их нет.

Сейчас на форуме стабильно один гость...Получается что не считает гостей тоже.

GeorG

В секции location (файл nginx.conf)
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;

А вообще, лучше почитайте тут.
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

Mavn

ос/версия/apache/nginx ??

если apache > 2.4.6 то mod_rpaf для него не работает там нужен remoteip
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Yarik

@ GeorG спасибо...Приблизительно тоже самое сейчас сижу изучаю.Я только запрос немного другой задал в поисковиках.
Я вот что заметил...Уверять точно не буду - но конфигурировал и настраивал мне всё хостер,и поначалу всё работало.Не знаю,может и совпадение но мод перестал работать после старта мемкеша.Я вот что думаю,остановить мемкеш,ребутнуть сервак и глянуть что оно выйдет.
@Mavn только что прочитал про это.Сейчас изучу всё внимательно и буду всё перепроверять...Если что тему апну.

Mavn

Цитата: Stalker от 03 декабря 2015, 13:54:11что думаю,остановить мемкеш,ребутнуть сервак и глянуть что оно выйдет.
в linux ребутать сервак последнее дело... если проверяете работу apache nginx memcache, то достаточно перегрузить/остановить сами сервисы, а не весь сервак
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Yarik

#7
Цитата: Mavn от 03 декабря 2015, 13:46:04если apache > 2.4.6 то mod_rpaf для него не работает там нужен remoteip
У меня 2.4.10
Дебиан 8/Апач 2.4.10 /nginx version: nginx/1.8.0
Я уже выдохся,кто-то может посмотреть чего оно не работает?
Всё включенно,проверил и один фиг ...

Mavn

centos 7
/etc/httpd/conf.modules.d/00-remoteip.conf
debian путь может отличаться у меня не стоит точно сказать не могу...
файлик приблизительно с таким содержанием
LoadModule remoteip_module /usr/lib64/httpd/modules/mod_remoteip.so
RemoteIPHeader X-Forwarded-For
RemoteIPInternalProxy 9.1.3.2 127.0.0.1

первая строка это загрузка модуля в вашем случае может не понадобится, это уж как говорится пробуйте

вообще если честно преимуществ apache+nginx перед httpd.itk  я не нашел
наверное сколь существенный рост производительности я бы почувствовал бы будь что то посерьезнее
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Yarik

Это получается мне надо удалить mod_rpaf и установить mod_remoteip...
Читаю что в Debian 8 (Jessie) Apache версии 2.4 и mod_rpaf там не работает как надо...

Mavn

ну я об этом как бы выше сказал, что rpaf на >2.4 не работает
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Yarik

Цитата: Mavn от 03 декабря 2015, 21:47:31ну я об этом как бы выше сказал, что rpaf на >2.4 не работает
Да уже переустановили всё с саппортом,не работает нефига wallbash .Это какой-то капкан.
Подскажите конфигурацию сервера самую оптимальную,чтобы без таких граблей...Пускай переустанавливают..

Mavn

я же говорю модуль доставьте remoteip и будет счастье...
если хотите кардинально, оставьте только апач или только nginx
если IspManager 5 стоит то все эти настройки вообще делаются через админку самой панели
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Yarik

#13
Цитата: Mavn от 03 декабря 2015, 21:53:11если IspManager 5 стоит то все эти настройки вообще делаются через админку самой панели
Стоит Веста...
Цитата: Mavn от 03 декабря 2015, 21:53:11я же говорю модуль доставьте remoteip и будет счастье...
Уверяют что всё ок...Я не уверен...
Пишет Module remoteip already enabled ,настройки активироанны,апач перезагружен..Не работает

Mavn

а настройки модуля сделали?
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Yarik

Сделал один в один как написанно сдесь http://www.newalive.net/164-apache-24-nginx-i-ip-adresa-klientov.html

Значится так...Вот конфиг самого remoteip
<IfModule mod_remoteip.c>
 RemoteIPHeader X-Real-IP
 RemoteIPInternalProxy 127.0.0.1
 RemoteIPInternalProxy 51.255.52.109
 </IfModule>

Вот конфиг апача
# It is split into several files forming the configuration hierarchy outlined
# below, all located in the /etc/apache2/ directory:
#
# /etc/apache2/
# |-- apache2.conf
# | `--  ports.conf
# |-- mods-enabled
# | |-- *.load
# | `-- *.conf
# |-- conf.d
# | `-- *

# Global configuration
PidFile ${APACHE_PID_FILE}
Timeout 30
KeepAlive Off
MaxKeepAliveRequests 100
KeepAliveTimeout 10

<IfModule mpm_prefork_module>
    StartServers          8
    MinSpareServers       5
    MaxSpareServers      20
    ServerLimit         256
    MaxClients          200
    MaxRequestsPerChild 4000
</IfModule>

<IfModule mpm_worker_module>
    StartServers          2
    MinSpareThreads      25
    MaxSpareThreads      75
    ThreadLimit          64
    ThreadsPerChild      25
    MaxClients          200
    MaxRequestsPerChild 4000
</IfModule>

<IfModule mpm_event_module>
    StartServers          2
    MinSpareThreads      25
    MaxSpareThreads      75
    ThreadLimit          64
    ThreadsPerChild      25
    MaxClients          200
    MaxRequestsPerChild 4000
</IfModule>

# These need to be set in /etc/apache2/envvars
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
#User www-data
#Group www-data

AccessFileName .htaccess

<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
    Satisfy all
</Files>

DefaultType None
HostnameLookups Off

ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn

# Include module configuration:
Include mods-enabled/*.load
Include mods-enabled/*.conf

# Include list of ports to listen on and which to use for name based vhosts
Include ports.conf

LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%a %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%a %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
LogFormat "%b" bytes

Include conf.d/

# Include the virtual host configurations:
#Include sites-enabled/

Вот конфиг nginx
# Server globals
user                    www-data;
worker_processes        2;
error_log               /var/log/nginx/error.log;
pid                     /var/run/nginx.pid;


# Worker config
events {
        worker_connections  1024;
        use                 epoll;
}


http {
    # Main settings
    sendfile                        on;
    tcp_nopush                      on;
    tcp_nodelay                     on;
    client_header_timeout           1m;
    client_body_timeout             1m;
    client_header_buffer_size       2k;
    client_body_buffer_size         256k;
    client_max_body_size            256m;
    large_client_header_buffers     4   8k;
    send_timeout                    30;
    keepalive_timeout               60 60;
    reset_timedout_connection       on;
    server_tokens                   off;
    server_name_in_redirect         off;
    server_names_hash_max_size      512;
    server_names_hash_bucket_size   512;
    proxy_set_header X-Real-IP $remote_addr;


    # Log format
    log_format  main    '$remote_addr - $remote_user [$time_local] $request '
                        '"$status" $body_bytes_sent "$http_referer" '
                        '"$http_user_agent" "$http_x_forwarded_for"';
    log_format  bytes   '$body_bytes_sent';
    #access_log          /var/log/nginx/access.log  main;
    access_log off;


    # Mime settings
    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;


    # Compression
    gzip                on;
    gzip_comp_level     9;
    gzip_min_length     512;
    gzip_buffers        8 64k;
    gzip_types          text/plain text/css text/javascript
                        application/x-javascript application/javascript;
    gzip_proxied        any;


    # Proxy settings
    proxy_redirect      off;
    proxy_set_header    Host            $host;
    proxy_set_header    X-Real-IP       $remote_addr;
    proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_pass_header   Set-Cookie;
    proxy_connect_timeout   90;
    proxy_send_timeout  90;
    proxy_read_timeout  90;
    proxy_buffers       32 4k;


    # Cloudflare https://www.cloudflare.com/ips
    set_real_ip_from   199.27.128.0/21;
    set_real_ip_from   173.245.48.0/20;
    set_real_ip_from   103.21.244.0/22;
    set_real_ip_from   103.22.200.0/22;
    set_real_ip_from   103.31.4.0/22;
    set_real_ip_from   141.101.64.0/18;
    set_real_ip_from   108.162.192.0/18;
    set_real_ip_from   190.93.240.0/20;
    set_real_ip_from   188.114.96.0/20; 
    set_real_ip_from   197.234.240.0/22;
    set_real_ip_from   198.41.128.0/17;
    set_real_ip_from   162.158.0.0/15;
    set_real_ip_from   104.16.0.0/12;
    set_real_ip_from   172.64.0.0/13;
    #set_real_ip_from   2400:cb00::/32;
    #set_real_ip_from   2606:4700::/32;
    #set_real_ip_from   2803:f800::/32;
    #set_real_ip_from   2405:b500::/32;
    #set_real_ip_from   2405:8100::/32;
    real_ip_header     CF-Connecting-IP;


    # SSL PCI Compliance
    ssl_session_cache   shared:SSL:10m;
    ssl_protocols       TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    ssl_ciphers        "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";


    # Error pages
    error_page          403          /error/403.html;
    error_page          404          /error/404.html;
    error_page          502 503 504  /error/50x.html;


    # Cache
    proxy_cache_path /var/cache/nginx levels=2 keys_zone=cache:10m inactive=60m max_size=512m;
    proxy_cache_key "$host$request_uri $cookie_user";
    proxy_temp_path  /var/cache/nginx/temp;
    proxy_ignore_headers Expires Cache-Control;
    proxy_cache_use_stale error timeout invalid_header http_502;
    proxy_cache_valid any 3d;

    map $http_cookie $no_cache {
        default 0;
        ~SESS 1;
        ~wordpress_logged_in 1;
    }


    # Wildcard include
    include             /etc/nginx/conf.d/*.conf;
}
Что ему нафик нужно? wallbash

Mavn

Насколько я помню так должно быть и я вам в таком формате давал
RemoteIPInternalProxy 51.255.52.109 127.0.0.1
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Yarik

Та пробовал я и в таком формате...Не знаю что там саппорт мутанул,но сейчас всё резко нормализовалось...
Пока пытаюсь расколоть этих редисок на предмет что же они сделали...По файлам я пробежался,всё ОК...

Yarik

С улыбкой вспоминаю свои тогдашние мучения учения.А всего то....
Открываем конфиг-файл редактором по пути
/etc/apache2/mods-enabled/rpaf.conf
Корректируем строку: RPAFproxy_ips 127.0.0.1, заменяя 127.0.0.1 на IP сервера.Получаем
<IfModule rpaf_module>
    RPAFenable On

    # When enabled, take the incoming X-Host header and
    # update the virtualhost settings accordingly:
    RPAFsethostname On

    # Define which IP's are your frontend proxies that sends
    # the correct X-Forwarded-For headers:
    RPAFproxy_ips айпи.сервера ::1


    # Change the header name to parse from the default
    # X-Forwarded-For to something of your choice:
#   RPAFheader X-Real-IP
</IfModule>
Перезапускаем Апач
Проще простого... :)

Captain Fizz

Зачем вообще нужен Апач? Установите nginx + php-fpm + MariaDB. Настройте кеширование. А Апач удалите, вместе с его мегамодулями. Для nginx самое сложное будет настроить Rewrite-правила, да и то, для автотранслирования есть сервисы.

Потребление ресурсов (оплата за хостинг) может уменьшиться в разы.

Yarik

Цитата: Captain Fizz от 24 декабря 2016, 21:38:22Потребление ресурсов (оплата за хостинг) может уменьшиться в разы.
Свой сервер
То что мне подходит по дисковому - там столько ресурсов что апач скромненько крутится в уголку и его практически незаметно. :)

bober

Цитата: S.T.A.L.K.E.R. от 25 декабря 2016, 10:03:42Свой сервер
То что мне подходит по дисковому - там столько ресурсов что апач скромненько крутится в уголку и его практически незаметно. :)
Свой или VPS/VDS ?