Название: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: Redmen от 15 Июля 2017, 23:36:42 С 01.07.2017 прекращена поддержка Freeradius 2.2.9 на Freebsd! ! !
Об этом сообщает официальный сайт коллекции портов для Freebsd https://www.freshports.org/net/freeradius2/ (https://www.freshports.org/net/freeradius2/) В последнем посте истории обновлений сказано: Цитировать Remove expired ports: 2017-06-30 net/freeradius2: EoL, use net/freeradius3 instead ... Благо переписать конфиги не составит труда, в основном изменено расположение некоторых конфигов, и строго описан тип поля пароля (вместо Password теперь Cleartext-Password(нужно уточнить)) это нужно поправить в конфигурации и в процедурах мускула! Удачи! Название: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: sever от 17 Июля 2017, 11:10:53 С 01.07.2017 прекращена поддержка Freeradius 2.2.9 на Freebsd! ! ! Столкнулся с этим, когда ставил на фре11, дерево портомвкачал через fetch и не мог найти 2 радиус. Пришлось устаночить с флешки дерево портов идущее с дистром. Там 2 радиус ещё есть. Название: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: sever от 17 Июля 2017, 20:15:40 В RADIUS-сервере FreeRADIUS, применяемом многими операторами связи для аутентификации, авторизации и аккаунтинга абонентов, выявлено 11 уязвимостей (CVE-2017-10978 - CVE-2017-10988), из которых две (CVE-2017-10984, CVE-2017-10979) могут привести к удалённому выполнению кода, а девять к отказа в обслуживании и, как следствие, невозможности клиентов подключиться к серверам доступа. Проблемы устранены в выпусках 3.0.15 и 2.2.10
Название: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: Nafanya от 19 Марта 2018, 23:25:06 Поднял сервер на FreeBSD-10.3. Все ставил из портов. Установил FreeRADIUS Version 2.2.9, Запускается. Но при проверке:
Цитировать radtest fanat arginata 127.0.0.1 0 hardpass51 выдается:Цитировать Sending Access-Request of id 126 to 127.0.0.1 port 1812 Может я что то недокрутил? Все ставил по новой доке.User-Name = "fanat" User-Password = "Marginata1283" NAS-IP-Address = 127.0.0.1 NAS-Port = 0 Message-Authenticator = 0x00000000000000000000000000000000 Sending Access-Request of id 126 to 127.0.0.1 port 1812 User-Name = "fanat" User-Password = "Marginata1283" NAS-IP-Address = 127.0.0.1 NAS-Port = 0 Message-Authenticator = 0x00000000000000000000000000000000 Sending Access-Request of id 126 to 127.0.0.1 port 1812 User-Name = "fanat" User-Password = "Marginata1283" NAS-IP-Address = 127.0.0.1 NAS-Port = 0 Message-Authenticator = 0x00000000000000000000000000000000 radclient: no response from server for ID 126 socket 3 Спасибо за подсказку. Название: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: Cell от 19 Марта 2018, 23:51:36 да вроде все понятно написано: клиент не видит севрера т.е. ИМХО сервер донт ворк
Название: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: Nafanya от 20 Марта 2018, 00:20:49 да вроде все понятно написано: клиент не видит севрера т.е. ИМХО сервер донт ворк Вроде все крутиться. Там сказано, что нет ответа, на сколько я понимаю. Название: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: ser970 от 20 Марта 2018, 07:39:35 остановить радиус . и запустить в режиме дебага и показать вывод.
Название: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: Nafanya от 20 Марта 2018, 10:45:51 остановить радиус . и запустить в режиме дебага и показать вывод. При запуске:Цитировать rlm_sql (sql): Attempting to connect rlm_sql_mysql #4 При авторизации с компа клиента:rlm_sql_mysql: Starting connect to MySQL server for #4 rlm_sql (sql): Connected new DB handle, #4 Module: Checking preacct {...} for more modules to load Module: Linked to module rlm_acct_unique Module: Instantiating module "acct_unique" from file /usr/local/etc/raddb/modules/acct_unique acct_unique { key = "User-Name, Acct-Session-Id, NAS-IP-Address, NAS-Identifier, NAS-Port" } Module: Linked to module rlm_preprocess Module: Instantiating module "preprocess" from file /usr/local/etc/raddb/modules/preprocess preprocess { huntgroups = "/usr/local/etc/raddb/huntgroups" hints = "/usr/local/etc/raddb/hints" with_ascend_hack = no ascend_channels_per_line = 23 with_ntdomain_hack = no with_specialix_jetstream_hack = no with_cisco_vsa_hack = no with_alvarion_vsa_hack = no } reading pairlist file /usr/local/etc/raddb/huntgroups reading pairlist file /usr/local/etc/raddb/hints Module: Checking accounting {...} for more modules to load Module: Linked to module rlm_detail Module: Instantiating module "detail" from file /usr/local/etc/raddb/modules/detail detail { detailfile = "/var/log/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-Src-IPv6-Address}}/detail-%Y%m%d" header = "%t" detailperm = 384 dirperm = 493 locking = no log_packet_header = no escape_filenames = no } Module: Checking session {...} for more modules to load Module: Linked to module rlm_radutmp Module: Instantiating module "radutmp" from file /usr/local/etc/raddb/modules/radutmp radutmp { filename = "/var/log/radutmp" username = "%{User-Name}" case_sensitive = yes check_with_nas = yes perm = 384 callerid = yes } Module: Checking post-auth {...} for more modules to load } # modules } # server server inner-tunnel { # from file /usr/local/etc/raddb/sites-enabled/inner-tunnel modules { Module: Checking authenticate {...} for more modules to load Module: Linked to module rlm_chap Module: Instantiating module "chap" from file /usr/local/etc/raddb/modules/chap Module: Linked to module rlm_mschap Module: Instantiating module "mschap" from file /usr/local/etc/raddb/modules/mschap mschap { use_mppe = yes require_encryption = no require_strong = no with_ntdomain_hack = no allow_retry = yes } Module: Linked to module rlm_unix Module: Instantiating module "unix" from file /usr/local/etc/raddb/modules/unix unix { radwtmp = "/var/log/radwtmp" } Module: Linked to module rlm_eap Module: Instantiating module "eap" from file /usr/local/etc/raddb/eap.conf eap { default_eap_type = "md5" timer_expire = 60 ignore_unknown_eap_types = no cisco_accounting_username_bug = no max_sessions = 1024 } Module: Linked to sub-module rlm_eap_md5 Module: Instantiating eap-md5 Module: Linked to sub-module rlm_eap_leap Module: Instantiating eap-leap Module: Linked to sub-module rlm_eap_gtc Module: Instantiating eap-gtc gtc { challenge = "Password: " auth_type = "PAP" } Module: Linked to sub-module rlm_eap_tls Module: Instantiating eap-tls tls { rsa_key_exchange = no dh_key_exchange = yes rsa_key_length = 512 dh_key_length = 512 verify_depth = 0 CA_path = "/usr/local/etc/raddb/certs" pem_file_type = yes private_key_file = "/usr/local/etc/raddb/certs/server.pem" certificate_file = "/usr/local/etc/raddb/certs/server.pem" CA_file = "/usr/local/etc/raddb/certs/ca.pem" private_key_password = "whatever" dh_file = "/usr/local/etc/raddb/certs/dh" fragment_size = 1024 include_length = yes check_crl = no check_all_crl = no cipher_list = "DEFAULT" make_cert_command = "/usr/local/etc/raddb/certs/bootstrap" ecdh_curve = "prime256v1" cache { enable = no lifetime = 24 max_entries = 255 } verify { } ocsp { enable = no override_cert_url = yes url = "http://127.0.0.1/ocsp/" use_nonce = yes timeout = 0 softfail = no } } Module: Linked to sub-module rlm_eap_ttls Module: Instantiating eap-ttls ttls { default_eap_type = "md5" copy_request_to_tunnel = no use_tunneled_reply = no virtual_server = "inner-tunnel" include_length = yes } Module: Linked to sub-module rlm_eap_peap Module: Instantiating eap-peap peap { default_eap_type = "mschapv2" copy_request_to_tunnel = no use_tunneled_reply = no proxy_tunneled_request_as_eap = yes virtual_server = "inner-tunnel" soh = no } Module: Linked to sub-module rlm_eap_mschapv2 Module: Instantiating eap-mschapv2 mschapv2 { with_ntdomain_hack = no send_error = no } Module: Checking authorize {...} for more modules to load Module: Linked to module rlm_realm Module: Instantiating module "suffix" from file /usr/local/etc/raddb/modules/realm realm suffix { format = "suffix" delimiter = "@" ignore_default = no ignore_null = no } Module: Linked to module rlm_files Module: Instantiating module "files" from file /usr/local/etc/raddb/modules/files files { usersfile = "/usr/local/etc/raddb/users" acctusersfile = "/usr/local/etc/raddb/acct_users" preproxy_usersfile = "/usr/local/etc/raddb/preproxy_users" compat = "no" } reading pairlist file /usr/local/etc/raddb/users reading pairlist file /usr/local/etc/raddb/acct_users reading pairlist file /usr/local/etc/raddb/preproxy_users Module: Checking session {...} for more modules to load Module: Checking post-proxy {...} for more modules to load Module: Checking post-auth {...} for more modules to load Module: Linked to module rlm_attr_filter Module: Instantiating module "attr_filter.access_reject" from file /usr/local/etc/raddb/modules/attr_filter attr_filter attr_filter.access_reject { attrsfile = "/usr/local/etc/raddb/attrs.access_reject" key = "%{User-Name}" relaxed = no } reading pairlist file /usr/local/etc/raddb/attrs.access_reject } # modules } # server radiusd: #### Opening IP addresses and Ports #### listen { type = "auth" ipaddr = * port = 0 } listen { type = "acct" ipaddr = * port = 0 } listen { type = "control" listen { socket = "/var/run/radiusd/radiusd.sock" } } listen { type = "auth" ipaddr = 127.0.0.1 port = 18120 } ... adding new socket proxy address * port 36067 Listening on authentication address * port 1812 Listening on accounting address * port 1813 Listening on command file /var/run/radiusd/radiusd.sock Listening on authentication address 127.0.0.1 port 18120 as server inner-tunnel Listening on proxy address * port 1814 Ready to process requests. Цитировать 7 NAS-Identifier = "WoodyNet" NAS-IP-Address = 127.0.0.1 Message-Authenticator = 0xc237ef5dd0e68c462e837f9fae961cff Acct-Session-Id = "1535347-em1-2" NAS-Port = 2 NAS-Port-Type = Ethernet Service-Type = Framed-User Framed-Protocol = PPP Calling-Station-Id = "20:cf:30:1e:18:d1" NAS-Port-Id = "em1" Vendor-12341-Attr-12 = 0x656d312d32 Vendor-12341-Attr-19 = 0x4d5352415356352e3230204d535241532d302d574f4f445 94e45542d8f8a200865c7045085234d9bb82fcda3190d40 Tunnel-Medium-Type:0 = IEEE-802 Tunnel-Client-Endpoint:0 = "20:cf:30:1e:18:d1" User-Name = "fanat" User-Password = "Marginata1283" # Executing section authorize from file /usr/local/etc/raddb/sites-enabled/noden y +group authorize { rlm_sql (sql): Reserving sql socket id: 4 [sql] expand: call radcheck('%{User-Name}') -> call radcheck('fanat') WARNING: Found User-Password == "...". WARNING: Are you sure you don't mean Cleartext-Password? WARNING: See "man rlm_pap" for more information. rlm_sql (sql): Released sql socket id: 4 [sql] User not found ++[sql] = notfound +} # group authorize = notfound ERROR: No authenticate method (Auth-Type) found for the request: Rejecting the u ser Failed to authenticate the user. Using Post-Auth-Type Reject WARNING: Unknown value specified for Post-Auth-Type. Cannot perform requested action. # Executing group from file /usr/local/etc/raddb/sites-enabled/nodeny Delaying reject of request 0 for 1 seconds Going to the next request Waking up in 0.9 seconds. Sending delayed reject for request 0 Sending Access-Reject of id 36 to 127.0.0.1 port 47352 Waking up in 4.9 seconds. Cleaning up request 0 ID 36 with timestamp +615 Ready to process requests. Название: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: ser970 от 20 Марта 2018, 11:42:52 там в радиусе ошибки .
показывате конфиги радиуса и процедур Название: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: Nafanya от 20 Марта 2018, 11:59:17 Все согласно мурзилки:
/usr/local/etc/raddb/sites-enabled/nodeny: Цитировать authorize { sql } authenticate { Auth-Type PAP { pap } } preacct { acct_unique preprocess } accounting { detail sql exec } session { radutmp sql } post-auth { sql } Mysql процедуры: Цитировать ALTER DATABASE nodeny CHARACTER SET utf8 COLLATE utf8_general_ci; DROP PROCEDURE IF EXISTS `radcheck`; DELIMITER $$ CREATE PROCEDURE `radcheck` (IN login VARCHAR(64)) BEGIN SELECT id,name,'Password' AS Attribute,AES_DECRYPT(passwd,'hardpass') AS Value,'==' FROM users WHERE name=login; END$$ DELIMITER ; DROP PROCEDURE IF EXISTS `radreply`; DELIMITER $$ CREATE PROCEDURE `radreply`(IN login VARCHAR(64)) BEGIN DECLARE usr_id INT; DECLARE usr_ip VARCHAR(15) DEFAULT NULL; SELECT id INTO usr_id FROM users WHERE name=login LIMIT 1; SELECT get_ip(usr_id) INTO usr_ip; SELECT NULL,login,'Framed-IP-Address',usr_ip,'='; SELECT NULL,login,'Framed-IP-Netmask','255.255.255.255','='; SELECT NULL,login,'Framed-Protocol','PPP','='; END$$ DELIMITER ; DROP PROCEDURE IF EXISTS `radupdate`; DELIMITER $$ CREATE PROCEDURE `radupdate`(IN login VARCHAR(64), IN ip VARCHAR(16), IN properties VARCHAR(255)) BEGIN DECLARE usr_id INT; DECLARE usr_ip VARCHAR(15) DEFAULT NULL; SELECT id INTO usr_id FROM users WHERE name=login LIMIT 1; SELECT get_ip(usr_id) INTO usr_ip; CALL set_auth(usr_ip, CONCAT('mod=pppoe;',REPLACE(properties,':',''))); END$$ DELIMITER ; DROP PROCEDURE IF EXISTS `radstop`; DELIMITER $$ CREATE PROCEDURE `radstop`(IN login VARCHAR(64)) BEGIN DECLARE usr_id INT; SELECT id INTO usr_id FROM users WHERE name=login LIMIT 1; DELETE FROM auth_now WHERE ip = get_ip(usr_id) LIMIT 1; END$$ DELIMITER ; на запрос отзывается: Цитировать CALL radreply((SELECT name FROM users LIMIT 1)); Цитировать +------+-------+-------------------+-----------+---+ | NULL | login | Framed-IP-Address | usr_ip | = | +------+-------+-------------------+-----------+---+ | NULL | 11552 | Framed-IP-Address | 10.1.1.57 | = | +------+-------+-------------------+-----------+---+ 1 row in set (0.00 sec) +------+-------+-------------------+-----------------+---+ | NULL | login | Framed-IP-Netmask | 255.255.255.255 | = | +------+-------+-------------------+-----------------+---+ | NULL | 11552 | Framed-IP-Netmask | 255.255.255.255 | = | +------+-------+-------------------+-----------------+---+ 1 row in set (0.00 sec) +------+-------+-----------------+-----+---+ | NULL | login | Framed-Protocol | PPP | = | +------+-------+-----------------+-----+---+ | NULL | 11552 | Framed-Protocol | PPP | = | +------+-------+-----------------+-----+---+ 1 row in set (0.00 sec) Query OK, 0 rows affected (0.00 sec) Название: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: Nafanya от 20 Марта 2018, 12:12:43 При выполнении:
Цитировать cd /usr/local/nodeny в конце выводится:perl install.pl -x Цитировать !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! You need to create function normalize_ippool! Execute in mysql: DROP FUNCTION IF EXISTS `normalize_ippool`; DELIMITER $$ CREATE FUNCTION `normalize_ippool` () RETURNS TINYINT NO SQL BEGIN DECLARE mid INTEGER UNSIGNED; CREATE TEMPORARY TABLE temp_ip_pool( id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, ip_id BIGINT UNSIGNED NOT NULL, PRIMARY KEY (id) ); SELECT MAX(id) into mid FROM ip_pool; UPDATE ip_pool SET id = id + mid; INSERT temp_ip_pool (SELECT NULL, id FROM ip_pool ORDER BY realip, type, tags); UPDATE ip_pool i JOIN temp_ip_pool t ON i.id = t.ip_id SET i.id = t.id; DROP TEMPORARY TABLE IF EXISTS temp_ip_pool; RETURN 1; END$$ DELIMITER ; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Название: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: ser970 от 20 Марта 2018, 12:15:18 это выпоняется от рута или от пользователя который прописан в радиусе?
ну и You need to create function normalize_ippool! Execute in mysql: = Вам нужно создать функцию normalize_ippool Название: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: Nafanya от 20 Марта 2018, 12:20:31 Все от рута.
В мусккуле я не силен... Может подскажете? Название: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: ser970 от 20 Марта 2018, 12:29:08 дай доступ
Название: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: Nafanya от 20 Марта 2018, 12:33:12 дай доступ СейчасНазвание: Re: Freeradius 2.2.9 expired on: 2017-06-30 Отправлено: ser970 от 20 Марта 2018, 12:59:09 s5oot@WoodyNet /usr/home/fanat]# radtest fanat Marginata1283 127.0.0.1 0 hardpass
Sending Access-Request of id 205 to 127.0.0.1 port 1812 User-Name = "fanat" User-Password = "Marginata1283" 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=205, length=38 Framed-IP-Address = 10.1.1.2 Framed-IP-Netmask = 255.255.255.255 Framed-Protocol = PPP |