Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Cześć
Mam Freeradiusa, działa bardzo grzecznie z Mysql:
radtest -t chap test test localhost 0 <hasełko> Sending Access-Request of id 20 to 127.0.0.1 port 1812 User-Name = "test" CHAP-Password = 0x14e51fc5bff8848ad9b8dc6e38207d4597 NAS-IP-Address = 127.0.0.1 NAS-Port = 0 Message-Authenticator = 0x00000000000000000000000000000000 rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=20, length=32 Framed-IP-Address = 192.168.2.229 Framed-IP-Netmask = 255.255.255.0
Ale teraz potrzebuję dodać drugą usługę autoryzowaną w Radiusie, który do tej usługi ma brać dane z innej bazy danych, mają być inne hasła, i inne atrybuty przekazywane przez (drugi proces) Radiusa,
a także inny "dictionary".
Czy da się to zrobić w obrębie jednej instalacji jako jakiś tym hosta wirtualnego, czy muszę odpalić drugą instalację Radiusa z innymi konfigami?
Wszelkie sugestie mile widziane... ;)
EDIT:
Serwer wirtualny już udało się uruchomić, teraz jeszcze trzeba go zapiąć do innej bazy danych.
Nie wiem, tylko, jak na obu usługach radiusa zrobić inne hasła dostępu, co docelowo planuję.
EDIT2:
Inne bazy:
http://wiki.freeradius.org/modules/Rlm_sql#Instances
Dodatkowy host:
server drugi { listen { ipaddr = 192.168.1.1 port = 1815 type = auth } client <nazwa_hosta_lub_IP> { secret = <hasełko_inne_niż_w_clients.conf> } authorize { } account { } ... }
Zrobione ;)
Teraz jeszcze trzeba przekonać serwer voip do autoryzacji Radius. ;)
Pozdro
;-)
Ostatnio edytowany przez Jacekalex (2014-07-24 01:10:11)
Offline
Nie to żebym wymyślał, ale czy nie lepiej trzymać wszystkie dane w jednej bazie ? Co do rozdzielania można wtedy zrobić virtual hosty w radiusie.
Offline
Z bazami możesz sobie robić jak chcesz, ale jak różne vhosty mają dawać różne zmienne RADATTR, to albo druga baza, albo baza ta sama, ale inne zapytania do bazy dla rożnych vhostów.
Ja potrzebuję różne hasła w poszczególnych usługach autoryzowanych w radiusie, dlatego też dałem różne bazy.
Tak jest po prostu prościej.
Ostatnio edytowany przez Jacekalex (2014-08-12 00:05:27)
Offline
Ja bym napisał procedurę i ona będzie decydowała co ma odpowiedzieć. Mogę ci pomóc z napisaniem takiej procedury. Drugie rozwiązanie jest takie żeby używać ralm w radiusie. To już urządzenia muszą wysyłać. Jak to mają to masz jeszcze prościej bo robisz sobie grupy w radiusie i tylko mieszasz rekordami.
Offline
Time (s) | Query |
---|---|
0.00018 | SET CHARSET latin2 |
0.00006 | SET NAMES latin2 |
0.00203 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.116.90.161' WHERE u.id=1 |
0.00088 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.116.90.161', 1732824235) |
0.00076 | SELECT * FROM punbb_online WHERE logged<1732823935 |
0.00140 | SELECT topic_id FROM punbb_posts WHERE id=272032 |
0.00007 | SELECT id FROM punbb_posts WHERE topic_id=26171 ORDER BY posted |
0.00167 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=26171 AND t.moved_to IS NULL |
0.00008 | SELECT search_for, replace_with FROM punbb_censoring |
0.00238 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=26171 ORDER BY p.id LIMIT 0,25 |
0.00088 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=26171 |
Total query time: 0.01039 s |