Возможно вы искали: 'Nightmare Ned'

May 15 2025 18:38:26
  • Как сделать 8Gamers.Ru домашней страницей?
  • Игры
    • База данных по играх
    • Игровые новости
    • Игровая индустрия
    • Обзоры на игры
    • Прохождения игр
    • Гайды к играм
    • Превью о играх
    • Игровые тизеры
    • Игровые арты
    • Игровые обои
    • Игровые скриншоты
    • Игровые обложки
    • Игровые трейлеры
    • Игровое видео
    • Вышедшие игры
    • Ближайшие релизы игр
  • Кино и ТВ
    • База данных по кино
    • Статьи о кино
    • Постеры
    • Кадры из кино
    • Кино трейлеры
    • Сегодня в кино
    • Скоро в кино
  • Комиксы и манга
    • Манга по алфавиту
    • База данных по комиксах
    • Читать онлайн комиксы
    • Читать онлайн манга
    • База персонажей
  • Читы и коды
    • Чит-коды для PC игр
    • Чит-коды для консольных игр
    • Трейнеры
    • Коды Game Genie
  • Моддинг
    • Модификации
    • Карты к играм
    • Программы для моддинга
    • Статьи о моддинге
  • Геймдев
    • Всё о создании игр
    • Список движков
    • Утилиты в помощь игроделу
    • Конструкторы игр
    • Игровые движки
    • Библиотеки разработки
    • 3D-модели
    • Спрайты и тайлы
    • Музыка и звуки
    • Текстуры и фоны
  • Рецензии
    • Игры
    • Кино
    • Аниме
    • Комиксы
    • Мангу
    • Саундтреки
  • Саундтреки
    • Лирика
  • Файлы
    • Патчи к играм
    • Русификаторы к играм
    • Сохранения к играм
    • Субтитры к кино
  • Медиа
    • Видео
    • Фото
    • Аудио
    • Фан-арты
    • Косплей
    • Фото с виставок
    • Девушки из игр
    • Рисунки
    • Рисуем онлайн
    • Фотохостинг
  • Юмор
    • Анекдоты
    • Афоризмы
    • Истории
    • Стишки и эпиграммы
    • Тосты
    • Цитаты
  • Флеш
    • Азартные
    • Аркады
    • Бродилки
    • Гонки
    • Для девочек
    • Для мальчиков
    • Драки
    • Квесты
    • Леталки
    • Логические
    • Мультфильмы
    • Открытки
    • Приколы
    • Разное
    • Спорт
    • Стратегии
    • Стрелялки
Статистика

Статей: 87772
Просмотров: 96111483
Игры
Injustice:  Gods Among Us
Injustice: Gods Among Us
...
Dark Souls 2
Dark Souls 2
Dark Souls II - вторая часть самой хардкорной ролевой игры 2011-2012 года, с новым героем, сюжето...
Battlefield 4
Battlefield 4
Battlefield 4 - продолжение венценосного мультиплеер-ориентированного шутера от первого ли...
Кино
Steins;Gate
Steins;Gate
Любители японской анимации уже давно поняли ,что аниме сериалы могут дать порой гораздо больше пи...
Ку! Кин-дза-дза
Ку! Кин-дза-дза
Начинающий диджей Толик и всемирно известный виолончелист Владимир Чижов встречают на шумной моск...
Обзоры на игры
• Обзор Ibara [PCB/PS2] 18357
• Обзор The Walking ... 18801
• Обзор DMC: Devil M... 19879
• Обзор на игру Valk... 15877
• Обзор на игру Stars! 17764
• Обзор на Far Cry 3 17948
• Обзор на Resident ... 16024
• Обзор на Chivalry:... 17508
• Обзор на игру Kerb... 17981
• Обзор игры 007: Fr... 16619
Превью о играх
• Превью к игре Comp... 17960
• Превью о игре Mage... 14464
• Превью Incredible ... 14721
• Превью Firefall 13479
• Превью Dead Space 3 16334
• Превью о игре SimC... 14730
• Превью к игре Fuse 15442
• Превью Red Orche... 15542
• Превью Gothic 3 16343
• Превью Black & W... 17354
Главная » Статьи » Разное » Установка и настройка gnu-radius + postgresql (freebsd ipfw traffic)

Установка и настройка gnu-radius + postgresql (freebsd ipfw traffic)

Ключевые слова: freebsd, ipfw, traffic, (найти похожие документы)

From: Олег Малых <malykh@krls.ru>
Subject: Установка и настройка gnu-radius + postgresql


Решил я поставить radius с возможностью хранения паролей
и настроек пользователей в SQL сервере. Так как зверинец из множества видов
SQL серверов держать не хотелось, то необходима была поддержка именно
PostgreSQL. Выбор пал на gnu-radius, как поддерживающий несколько видов SQL,
в том числе и PostgreSQL.
Данный документ не претендует на полную документацию по установке
gnu-radius+postgresql, это просто последовательность действий, которая
привела меня к работающей системе. В документе приведены ряд решений и
трудности с которыми мне пришлось столкнуться при реализации данного
проекта. Все это ставилось на linux версии RedHat 7.1. PostgreSQL был
собран из исходников для другой задачи и успешно работал на момент
установки.

Установку PostgreSQL здесь разбирать не будем, а
остановимся именно на установке gnu-radius и связки его с SQL.

Сама установка ничего сложного в себя не включает:

1) Скачиваем

$wget http://ftp.gnu.org/gnu/radius/gnu-radius-0.96.4.tar.gz

2) Распаковываем

$tar xzvf gnu-radius-0.96.4.tar.gz

3) Переходим в каталог с Radius

$cd gnu-radius-0.96.4

Если интересно, то читаем README и т.д.

4) Запускаем конфигурирование, указывая подключить PostgreSQL и пути
к include файлам PostgreSQL

$./configure
--with-postgres
--with-include-path=/usr/local/pgsql/include
--with-client

Если PostgreSQL собран в другом месте, то, соответственно, измените путь.

5) Собираем

$make

6) Инсталлируем

$make install

Если возникли ошибки, то где-то Вы ошиблись, либо не находится нормальная
сборка PostgreSQL. По умолчанию radius собирается в /usr/local, вы можете
его собрать и в другой каталог, указав при конфигурировании --prefix=PREFIX,
где PREFIX это каталог, относительно которого будет установлен radius.

Первичная настройка

1) Я подправил себе файл /usr/local/etc/raddb/config

port 1645;

В секции auth и

port 1646;

В секции acct.

Мне это нужно было, чтобы киску свою не перенастраивать, Вы
можете оставить себе порты по умолчанию, не это влияет на работу ;)

2) В файл /usr/local/etc/raddb/clients занесите информацию о клиентах,
которые будут запрашивать аутентификацию у radius

#Client Name Key
#---------------- -------------------
localhost localtest
cisco ciscokey

Ключи лучше придумать самим ;)

3) Для теста нашего radius есть клиентские утилиты, вот для них
нужно прописать конфигурацию в /usr/local/etc/raddb/client.conf

server local 127.0.0.1 localtest 1645 1646
source_ip 127.0.0.1
timeout 3
retry 1

4) В файл /usr/local/etc/raddb/users занесите для теста

# This is the users database.
uzver Auth-Type = Local, Password = "test"
Service-Type = NAS-Prompt-User

radius уже может работать и отвечать на запросы
Можно проверить на работоспособность radiusd запустив

$/usr/local/sbin/radiusd

(radiusd должен быть запущен относительно корневого пути, например
/usr/local/sbin/radiusd, иначе работа будет некорректной)

У меня с ходу не запустился, так как не были указаны пути к библиотекам
PostgreSQL. Я внес пути в /etc/ld.so.conf и запустил ldconfig, после
чего все удачно заработало.

Ответы от radius можно проверить тестовой утилитой /usr/local/sbin/radauth

$/usr/local/sbin/radauth -v uzver test
server 127.0.0.1:1645
send code 1 (RT_AUTHENTICATION_REQUEST)
send: User-Name = uzver
send: Password = test
send: NAS-Port-Id = 0
recv code 2 (RT_AUTHENTICATION_ACK)
recv: Service-Type = NAS-Prompt-User
expect 2
got 2
PASS

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

Теперь самое страшное ;) - связь с SQL. В описании приведена только схема
связи данного продукта с MySQL, да и то с ошибками. Ниже приведена
последовательность действий с PostgreSQL для подготовки его к работе с radius:

1) Становимся пользователем из под которого запущен postmaster и создаем базу
(не будем оригинальны) radius.

[root@ns /]# su - postgres
[postgres@ns postgres]$ createdb radius

2) Входим в командный режим управления базой и создаем пользователя radius с
паролем test

[postgres@ns postgres]$ psql -d radius
radius=# create user radius password 'test';

3) Создаем таблицы для хранения информации о пользователях, сами SQL
выражения изменены под PostgreSQL и вроде как полнофункционально работают.
Я заменил все типы char(n) на тип varchar(n) так как odbc добавляет пробелы
в конец строки до требуемого числа символов.
Таблица passwd (здесь в документации допущена ошибка, пропущено поле active
я дал ему тип varchar(3) и значение по умолчанию лучше 'Framed-User')

radius=# CREATE TABLE passwd ( user_name varchar(32) UNIQUE default
'' not null, service varchar(16) default 'Framed-User' not
null, password varchar(64), active varchar(3));

Таблица groups (все прозрачно)

radius=# CREATE TABLE groups ( user_name varchar(32) default ''
not null, user_group varchar(32));

Таблица attrib (вместо MySQL enum() просто проверяем на присутствие - check)

radius=# CREATE TABLE attrib ( user_name varchar(32) default ''
not null, attr varchar(32) default '' not null,
value varchar(128), op varchar(3)
check (op in ('=', '!=', '<', '>', '<=', '>='))
default null );

Таблица calls

radius=# CREATE TABLE calls ( status int, user_name varchar(32),
event_date_time timestamp without time zone
DEFAULT '1970-01-01 00:00:00' NOT NULL,
nas_ip_address varchar(17), nas_port_id bigint,
acct_session_id varchar(16) DEFAULT '' NOT NULL,
acct_session_time bigint, acct_input_octets bigint,
acct_output_octets bigint, connect_term_reason int,
framed_ip_address varchar(17), called_station_id varchar(32),
calling_station_id varchar(32) );

Даем право на чтение, запись пользователю radius

radius=# grant select on passwd,groups,attrib,calls to radius;
radius=# grant insert,update on calls to radius;

4) Теперь выходим из командного режима "q".
Не забудьте прописать в pg_hba.conf возможность доступа к базе radius
с localhost через аутентификацию логин-пароль например:

host radius all 127.0.0.1 255.255.255.255 password passwd

И естественно, что postmaster нужно запускать с ключиком -i

Вроде ничего не забыл про PostgreSQL теперь возвращаемся к radius и
правим файл /usr/local/etc/raddb/sqlserver

interface postgres
server localhost
port 5432
login radius
password test
keepopen yes
doauth yes
auth_db radius
doacct yes

Я указал только строки в которые я вносил изменения. От локальной
аутентификации я отказался на случай переноса сервера SQL на другую машину.

Теперь возвращаемся к /usr/local/etc/raddb/users и добавляем к примеру:

DEFAULT Group = "test1", Auth-Type = SQL,
Simultaneous-Use = 1
Service-Type = Framed-User

Внимание! При аутентификации через SQL пароли в таблице должны храниться
криптованые или md5 или des. Долго я выяснял это, пока не наткнулся в
документации:

Specifying Passwords in SQL Database.
user-name Auth-Type = Crypt-Local,
Password-Location = SQL
Using this profile, the user's password is retrieved from the authentication
database using auth_query. The configuration of SQL authentication is
described in detail on section Authentication Server Parameters.

The shortcut for this notation is Auth-Type = SQL.

In any case, the passwords used with this authentication type must be
either DES or MD5 hashed.

Для криптования паролей я воспользовался утилитой /sbin/grub-md5-crypt
Запускаете, вводите пароль, полученную строку вносите в таблицу.
Если Вы занесли данные о пользователе, прописали в группу, добавили атрибутов
то при помощи /usr/local/sbin/radauth можно проверить работоспособность
того, что мы сделали. Можно добавлять, удалять атрибуты в PostgreSQL и
смотреть как radius честно их отдает. Очень удобен механизм групп. например:

DEFAULT Group = "test1", Auth-Type = SQL,
Login-Time = "Wk1800-0755,Sa,Su0000-2359",
Simultaneous-Use = 1
Service-Type = Framed-User,
Framed-Protocol = PPP,
Framed-Netmask = 255.255.255.255

DEFAULT Group = "test2", Auth-Type = SQL,
Simultaneous-Use = 1
Service-Type = Framed-User

Пользователи, которые в группе test1 могут получить доступ только с 18:00
до 07:55 по рабочим дням и круглосуточно по выходным, а из группы test2
пользователи не имеют временных ограничений. В общем, большая широта для
творчества.


Оригинал: http://linuxnews.ru/docs/new/malykh/radius_postgress.html
787 Прочтений •  [Установка и настройка gnu-radius + postgresql (freebsd ipfw traffic)] [08.05.2012] [Комментариев: 0]
Добавил: Ukraine Vova
Ссылки
HTML: 
[BB Url]: 
Похожие статьи
Название Добавил Добавлено
• Установка и настройка gnu-radius + ... Ukraine Vova 08.05.2012
• Установка и настройка gnu-radius + ... Ukraine Vova 08.05.2012
Ни одного комментария? Будешь первым :).
Пожалуйста, авторизуйтесь для добавления комментария.

Проект входит в сеть сайтов «8Gamers Network»

Все права сохранены. 8Gamers.NET © 2011 - 2025

Статьи
Рецензия на Pressure
Рецензия на Pressure
Чтобы обратить на себя внимание, начинающие маленькие разработчики, как правило, уходят в жанры, ...
Рецензия на Lost Chronicles of Zerzura
Рецензия на Lost Chron...
Игры, сделанные без любви и старания, похожи на воздушный шар – оболочка есть, а внутри пусто. Lo...
Рецензия на The Bridge
Рецензия на The Bridge
«Верх» и «низ» в The Bridge — понятия относительные. Прогуливаясь под аркой, можно запросто перей...
Рецензия на SimCity
Рецензия на SimCity
Когда месяц назад состоялся релиз SimCity, по Сети прокатилось цунами народного гнева – глупые ош...
Рецензия на Strategy & Tactics: World War 2
Рецензия на Strategy &...
Название Strategy & Tactics: World War II вряд ли кому-то знакомо. Зато одного взгляда на ее скри...
Рецензия на игру Scribblenauts Unlimited
Рецензия на игру Scrib...
По сложившейся традиции в информационной карточке игры мы приводим в пример несколько похожих игр...
Рецензия на игру Walking Dead: Survival Instinct, The
Рецензия на игру Walki...
Зомби и продукция-по-лицензии — которые и сами по себе не лучшие представители игровой биосферы —...
Обратная связь | RSS | Донейт | Статистика | Команда | Техническая поддержка