Skip to content
La2Base
Home
DownloadsWikiForumFAQ
Search
ruen
Sign up Login
HomeFilesWikiLogin
  • Home
  • Downloads
  • Wiki
  • FAQ
  • Contact Us
  • About
  • Rules
  • Privacy
  • Terms of Service

© 2026 la2base.com · All rights reserved

ruen
Forum/Серверные файлы/Hauth C4,c5,c6,t1,t1.5
Search

Hauth C4,c5,c6,t1,t1.5

1 replies474 viewsCurrently viewing: 1
pchayka
pchayka

User

Ветеран

Posts: 1304

На форуме с: 02/01/2008

Репутация: +1313

Рейтинг: 0

· 01/20/2009, 01:04 PM

[attachment=2331:hAuthD.zip]


Цитата
----------
Секция log
----------

Отвечает за сохранение логов.
Auth - сохранять результаты авторизации в файлы
Guard - сохранять сообщения защиты в файлы
All - сохранять в файлы все сообщения из окна
db - сохранять в БД информацию о входе в игру

Таблица (для db=1):

USE [lin2db]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[hauthd_log](
[time] [datetime] NOT NULL,
[account] [varchar](14) NOT NULL,
[ip] [varchar](15) NOT NULL,
[hkey] [varchar](16)
) ON [PRIMARY]

GO
SET ANSI_PADDING OFF


-------------
Секция online
-------------

Multiplier - множитель онлайна (к примеру, 1.5)

UserCount - заполнять или нет (0) таблицу user_count
Значение отличное от нуля обозначает интервал в минутах

Interval - интервал в секундах между запросами онлайна у игровых серверов


------------
Секция admin
------------

password - универсальный пароль, позволяющий зайти любым аккаунтом
с обходом всех ограничений (бан, привязка по IP, защита и т.д.)

ip - маска IP при входе с которых разрешено использование универсального пароля.


----------
Секция adv
----------

EULA - отображать (1) или нет (0) EULA при входе (работает не на всех серверах).

test - вход в игру разрешен всем (0) или только избранным (1) из списка Test_IDs.
Помимо списка Test_IDs учитывается значение поля login_flag из таблицы user_account
(вход разрешен при login_flag=16).

C4 - режим совместимости с С4 клиентом (при C4=1).
Не забудьте изменить в секции main параметр BlowfishKey.
Необходимо использовать клиент, который использует чистый C4 протокол авторизации!

MaxConnectionsPerIP - ограничение на число соединений с одного IP.
Это ограничение не на ИГРУ, а на АВТОРИЗАЦИЮ.
Соединение продолжается с момента нажатия кнопки login и до выбора сервера из списка включительно.

AntiDOS - при резком повышении нагрузки (когда сервер уже не успевает обрабатывать все
запросы) включается режим AntiDOS (если параметр установлен в единицу). Режим работает
5 минут и отключается (если атака продолжается, включается опять).
В этом режиме таймауты сведены к минимуму, включаются жесткие ограничения, как по времени
обработки каждого запроса, так и по количеству одновременных запросов с IP подсетей.

AntiBrute - включение секции AntiBrute (защита от перебора паролей)


----------
Секция ext
----------

mask - включают привязку аккаунтов к IP (поле mask в таблице user_account).
Если поле пустое или содержит *, то вход разрешен с любого IP, иначе вход разрешен
только с адресов, подходящих по маске (используется файловая маска с символами * и ?).
Возможен ввод нескольких масок через запятую (пример: 192.168.1.*,192.168.2.*,10.24.7.*)

md5password - использовать хеш на основе md5 для хранения паролей пользователей.
Необходимо наличие поля md5password типа varchar(32) в таблице user_auth.
Если поле пустое, выполняется обычная проверка пароля. Если пароль верный, вычисляется
хеш с использованием md5 и заносится в поле md5password (в поле password заносится 0).
Если поле md5password уже заполнено, выполняется проверка только с использованием md5.
Значение параметра - ключ для получения хеша (задается раз и навсегда!).
Опция отключена, если параметр не задан или равен нулю.
Функция на php для получения хеша (замените 'key' на значение параметра md5password):
<?
function hCrypt($password) {
$md5password='key';
$s=md5($password).md5($md5password);
$j=0;
for ($i=0;$i<strlen($s);$i++) {
if ($j>=strlen($md5password)) $j=0;
$s[$i]=$s[$i]^$md5password[$j];
$j++;
}
return md5($s);
}
?>
Внимание! Используйте эту опцию только в том случае, если до конца понимаете на что идете!

ExecLogin - позволяет при каждой успешной авторизации вызывать процедуру MSSQL.
Если значение 1, hAuthD после всех проверок вызывает hauthd_login (Stored Procedure).
Процедуре передается ID учетной записи (параметр @uid).
Вход в игру блокируется, если процедура возвращает ok со значением 0.
Пример процедуры hauthd_login:
USE [lin2db]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[hauthd_login]
@uid int
AS
SELECT pay_stat AS ok FROM user_account WITH (nolock) WHERE uid=@uid

guard - активирует модуль защиты (актуально только с использованием специальной DLL для клиента)

----------------
Секция AntiBrute
----------------

MaxAttempts - максимальное число попыток входа за интервал времени (interval)

Interval - интервал в секундах для расчета количества попыток входа.

Penalty - интервал в секундах в течение которого вход в игру запрещен (независимо
от того введен правильный пароль или нет) после того, как пользователь сделал
MaxAttempts попыток за Interval секунд.

— You&#39;re an amateur

0
Topic is closed for replies