Перейти к контенту
  • 0

хаотичная смена профайла


Yaroslaw

Вопрос

Добрый день

После обновления ipb до версии 3.0.1 возникли проблемы с авторизацией пользователей, точнее профайлы пользователей хаотично меняються.

 

Комментарий одного из пользователей:

 

"Просто я захожу на форум и когда начинаю смотреть тему, то оказывается, что залогинилась, и не обязательно под своим именем - под любым, кто в это время у нас в сети и на форуме

то есть непроизвольно, так сказать, спонтанно

 

Все пользователи находяться за разными компьютерами, но я на своем ноутбуке, Дима в соседней комнате, Лиля - на своем ноутбуке, и мы все вперемешку, я под их никами, они - под моими - такая как-то была ситуация."

 

с ipb 2.xx такого не было.

 

С чем может быть связана данная проблема ?

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0

В настройках безопасности отключить опцию Учитывать IP адрес пользователя при проверке сессии?

 

И по желанию поменять значения

Учитывать браузер пользователя при проверке сессии? на Да

Разрешить X_FORWARDED_FOR? на Да

 

Можно попробовать не отключать определение по IP, а воспользоваться только опциями "по желанию" из списка выше.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Всем дорого времени суток

 

 

В настройках безопасности отключить опцию Учитывать IP адрес пользователя при проверке сессии?

 

И по желанию поменять значения

Учитывать браузер пользователя при проверке сессии? на Да

Разрешить X_FORWARDED_FOR? на Да

 

Все так и стоит. Меняли уже несколько раз по рекомендации вашей тех. поддержки, ничего не поменялось.

Пробовали разные варианты, не помогло.

 

Можно попробовать не отключать определение по IP, а воспользоваться только опциями "по желанию" из списка выше.

 

Вообщем мы не первый день в интернете и хорошо понимаем что такое IP адрес,. session, cookie и даже знаем что такое X_FORWARDED_FOR, и в каких случаешь он "появляется".

 

Если можно - я вам дам доступ к АЦ, посмотрите пожалуйста сами, определенные группы пользователей уже ОООООООООООЧЕНЬ жалуются.

 

Администратор говорит что у нас на сервере стоит nginx, и до этого на ipb 2.3 стоял nginx (на 2й ветке проблем не возникало, до того пока мы не обновились :D.

Вроде все факторы указывают на именно техническую проблему в форуме.

 

(версия форума 3.0.1).

 

Если нужные еще какие-нибудь данные напишите, я готов идти на встречу и предоставить все необходимое, вплоть до физ. доступа к файлам форума, лишь бы проблема разрешилась, и желательно в кратчайшие сроки.

 

спасибо большое

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Значит как вариант у вас nginx не пробрасывает заголовок X_FORWARDED_FOR, так как если у вас дистрибутив форума без изменений, при данных настройках должны быть изменения в определении пользователей, как минимум должны появится локальные IP-адреса (10.х.х.х, 192.168.х.х и т.п)

 

Есть вариант, что пользователи сидят за кеширующим прокси, таким образом мы можем хоть переписать форум, но все пользователи, которые сидят за ним, будут получать одно и тоже.

 

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

Ссылка на комментарий
Поделиться на других сайтах

  • 0

все зависит только от куки,

сначала авторизация идет без проверки пароля по куки session_id, там проверяются браузер и/или ип адрес

если все ок, то авторизация, если что-то пошло не так, то

авторизация идет по куки member_id+pass_hash

вытаскивается данные по мемберу по его ид и сверяется pass_hash

тут уже плевать на ип и браузер, проверяются такие вещи, как продолжительность жизни этого логин кея и т.д.

 

вывод - пользователи не дали достаточно информации по своей проблеме, как-то: заходят ли с их компьютеров другие члены семьи, пробовали ли они очищать куки полностью, меняется ли авторизация с течением времени (зашла под своим акк, а через 5 кликов - акк сына/дочери - тут кстати возможно вообще кеш браузера показывает старую картинку сайта со старым именем, долой тупую оперу, не понимающую но-кеш хедеры)

 

+ пока я писал, еще хороший вариант - пользователи сидят за кеширующим прокси

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Значит как вариант у вас nginx не пробрасывает заголовок X_FORWARDED_FOR, так как если у вас дистрибутив форума без изменений, при данных настройках должны быть изменения в определении пользователей, как минимум должны появится локальные IP-адреса (10.х.х.х, 192.168.х.х и т.п)

 

Сервер:

 

Сервер работает на связке nginx + fast_cgi.

http://advayta.org/forum/nginx.conf - Основной конфиг nginx

http://advayta.org/forum/advayta1.conf - Конфиг для домена advayta.org

 

 

 

 

 

 

Есть вариант, что пользователи сидят за кеширующим прокси, таким образом мы можем хоть переписать форум, но все пользователи, которые сидят за ним, будут получать одно и тоже.

 

Кеш на проксе отключили.

 

 

вывод - пользователи не дали достаточно информации по своей проблеме, как-то: заходят ли с их компьютеров другие члены семьи, пробовали ли они очищать куки полностью, меняется ли авторизация с течением времени (зашла под своим акк, а через 5 кликов - акк сына/дочери - тут кстати возможно вообще кеш браузера показывает старую картинку сайта со старым именем, долой тупую оперу, не понимающую но-кеш хедеры)

 

1. До этого почти все сидели на опере, ради эксперимента поставил на одну машину firefox 3.5 (те бразуер новый без кук и тп). Залогинелись, 2-3 перехода, и аккаунт поменялся.

 

2. зашла под своим акк, а через 5 кликов - акк сына/дочери - именно так, причем бывает что на главной странице все время Мама, а допустим в активных темах уже дочь.

 

3. тут кстати возможно вообще кеш браузера показывает старую картинку сайта со старым именем - нет, в новых темах есть новые темы, страница обновлена. Но логин не тот.

 

4. Интернет раздается win 2007 сервером, NAT - по средствам kerio.

 

5. Почему все грешат именно на новый форум. Перекинули старую версию форума на advayta.org/forum4/ - если пользоваться веткой 2.3 - такие проблемы не возникают.

 

 

какие еще сведения необходимы ?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

fast_cgi с кэшем? :D

 

но тогда проблема была бы у всех пользователей. другие жалуются? сами можете воспроизвести ошибку?

Изменено пользователем Ritsuka
Ссылка на комментарий
Поделиться на других сайтах

  • 0
[root@advayta /usr/local/etc/nginx]# cat fastcgi_params

fastcgi_param  QUERY_STRING	   $query_string;
fastcgi_param  REQUEST_METHOD	 $request_method;
fastcgi_param  CONTENT_TYPE	   $content_type;
fastcgi_param  CONTENT_LENGTH	 $content_length;

fastcgi_param  SCRIPT_NAME		$fastcgi_script_name;
fastcgi_param  REQUEST_URI		$request_uri;
fastcgi_param  DOCUMENT_URI	   $document_uri;
fastcgi_param  DOCUMENT_ROOT	  $document_root;
fastcgi_param  SERVER_PROTOCOL	$server_protocol;

fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE	nginx/$nginx_version;

fastcgi_param  REMOTE_ADDR		$remote_addr;
fastcgi_param  REMOTE_PORT		$remote_port;
fastcgi_param  SERVER_ADDR		$server_addr;
fastcgi_param  SERVER_PORT		$server_port;
fastcgi_param  SERVER_NAME		$server_name;

# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS	200;
[root@advayta /usr/local/etc/nginx]#

Ссылка на комментарий
Поделиться на других сайтах

  • 0
зашла под своим акк, а через 5 кликов - акк сына/дочери - именно так, причем бывает что на главной странице все время Мама, а допустим в активных темах уже дочь.

Так проблема только в случае, когда два человека выходят с одного ПК? Если разные ПК - проблемы нет?

 

Вообще только с одного, или у нескольких групп пользователей, сидящих за разными общими внутри группы компьютерами?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

[root@advayta /usr/local/etc/nginx]# ls -la
total 92
drwxr-xr-x   5 root  wheel   512 Dec  4 23:05 .
drwxr-xr-x  17 root  wheel  2048 Nov 20 19:24 ..
drwxr-xr-x   2 root  wheel   512 Mar 16  2009 default
[b]-r--r--r--[/b]   1 root  wheel   909 Jul  5 13:30 fastcgi_params

 

а этот файл на лету можно менять ?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Ну попробуйте пробросить X_FORWARDED_FOR

 

строчка выше

 

На лету можно менять все что угодно. Главное reload сделать nginx, чтобы он все конфиги перезагрузил.

Ссылка на комментарий
Поделиться на других сайтах

  • 0
зашла под своим акк, а через 5 кликов - акк сына/дочери - именно так, причем бывает что на главной странице все время Мама, а допустим в активных темах уже дочь.

Так проблема только в случае, когда два человека выходят с одного ПК? Если разные ПК - проблемы нет?

 

Вообще только с одного, или у нескольких групп пользователей, сидящих за разными общими внутри группы компьютерами?

 

как раз в том и проблема что все заходят с разных ПК.

 

Ну попробуйте пробросить X_FORWARDED_FOR

 

строчка выше

 

На лету можно менять все что угодно. Главное reload сделать nginx, чтобы он все конфиги перезагрузил.

 

[root@advayta /usr/local/etc/nginx]# sh /usr/local/etc/rc.d/nginx reload
Performing sanity check on nginx configuration:
the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok
configuration file /usr/local/etc/nginx/nginx.conf test is successful

[root@advayta /usr/local/etc/nginx]# sh /usr/local/etc/rc.d/nginx-fcgi stopt
msg_usage: not found
[root@advayta /usr/local/etc/nginx]# sh /usr/local/etc/rc.d/nginx-fcgi stop
killproc: not found
[root@advayta /usr/local/etc/nginx]# sh /usr/local/etc/rc.d/nginx-fcgi start
already running
[root@advayta /usr/local/etc/nginx]#

 

Перезапустил все что нашел.

 

спасибо большое.

 

завтра днем проверим отпишемся.

 

еще раз спасибо

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Впринципе после reload не надо делать start/stop. Nginx просто подгружает новый конфиг без перезагрузки процесса.

 

Хотя судя по логу, stop у вас не работает, видимо у вас FreeBSD

Ссылка на комментарий
Поделиться на других сайтах

  • 0

да у нас FreeBDS и я тоже обратил внимания что stop не работает.

 

посмотрел nginx-fcgi там окрома status, stop, start ничего понятно больше не нашел. :D

Ссылка на комментарий
Поделиться на других сайтах

  • 0

/admin/sources/classes/session/publicSessions.php

фаршировать дебагом, требовать юзеров к воспроизводству ошибки

фаршировать лучше всего fopen sessiondebug.php в папке cache, запись туда интересного в районе

		$cookie['session_id']	= IPSCookie::get('session_id');
	$cookie['member_id']	= IPSCookie::get('member_id');
	$cookie['pass_hash']	= IPSCookie::get('pass_hash');

				/* Test for IP Address... */
			if ( $this->settings['match_ipaddress'] )
			{
				if ( $_session['ip_address'] != $this->_member->ip_address )
				{
					return $this->_killAuthorizeAttempt( $session_id, $_session );
				}
			}

		if ( $this->session_id )
	{
		//-----------------------------------------
		// We've checked the IP addy and browser, so we can assume that this is
		// a valid session.
		//-----------------------------------------

		else
	{
		//-----------------------------------------
		// We didn't have a session, or the session didn't validate
		// Do we have cookies stored?
		//-----------------------------------------

		if ( $cookie['member_id'] != "" and $cookie['pass_hash'] != "" )
		{

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.