]>
git.ipfire.org Git - thirdparty/freeradius-server.git/log
Alan T. DeKok [Wed, 7 Apr 2021 17:11:33 +0000 (13:11 -0400)]
close connection on "no TLS data, but connection isn't set up"
Alan T. DeKok [Wed, 7 Apr 2021 17:04:49 +0000 (13:04 -0400)]
add %{listen:Originating-Realm-Key}
Alan T. DeKok [Tue, 6 Apr 2021 13:05:56 +0000 (09:05 -0400)]
allow multiple Proxy-To-Originating-Realm keys
in which case it proxies to the first one it can, NOT to all
of them.
This loop allows for a reverse *proxy* to say "any of these N
keys can return CoA packets to ream FOO".
Alan T. DeKok [Tue, 6 Apr 2021 12:58:25 +0000 (08:58 -0400)]
notes on Status-Server when we bring up a TLS connection
Alan T. DeKok [Tue, 6 Apr 2021 12:46:47 +0000 (08:46 -0400)]
regularize TLS messages
Alan T. DeKok [Tue, 6 Apr 2021 12:35:02 +0000 (08:35 -0400)]
declare 'key' as const, which avoids a weird memcpy
Alan T. DeKok [Tue, 6 Apr 2021 12:31:25 +0000 (08:31 -0400)]
hoist reverse_coa checks before _all_ "remove from proxy hash" calls
Vadim Cargatser [Tue, 6 Apr 2021 11:58:15 +0000 (14:58 +0300)]
fix radsec tests
Alan T. DeKok [Mon, 5 Apr 2021 13:21:15 +0000 (09:21 -0400)]
originated CoA packets may not have a listener.
Alan T. DeKok [Mon, 5 Apr 2021 13:18:48 +0000 (09:18 -0400)]
shut down coa tunnel listener after cleaning up proxied packets
Alan T. DeKok [Mon, 5 Apr 2021 13:15:21 +0000 (09:15 -0400)]
grab another coa tunnel listener if this one is full
which bypasses the normal logic of proxy_new_listener(), etc.
Alan T. DeKok [Mon, 5 Apr 2021 13:09:50 +0000 (09:09 -0400)]
fixes from Vadim
request->proxy_listener is NULL after removing it from the proxy
hash, so cache the reverse_coa status.
Alan T. DeKok [Mon, 5 Apr 2021 13:06:17 +0000 (09:06 -0400)]
typo fixes from Vadim
Alan T. DeKok [Sat, 3 Apr 2021 17:38:13 +0000 (13:38 -0400)]
and more cleanups
Alan T. DeKok [Sat, 3 Apr 2021 14:12:19 +0000 (10:12 -0400)]
more cleanups of TLS debug
Alan T. DeKok [Sat, 3 Apr 2021 14:05:40 +0000 (10:05 -0400)]
run new connections through a special section
in order to clearly separate them from other packets
Alan T. DeKok [Sat, 3 Apr 2021 13:21:15 +0000 (09:21 -0400)]
only initialize the mutex if we succeed on insert
on the off chance that pthread_mutex_init() allocates memory
Alan T. DeKok [Sat, 3 Apr 2021 12:13:33 +0000 (08:13 -0400)]
typo
Alan T. DeKok [Sat, 3 Apr 2021 12:06:10 +0000 (08:06 -0400)]
retry on insert failure, due to mutex issues
Alan T. DeKok [Fri, 2 Apr 2021 19:34:55 +0000 (15:34 -0400)]
for non-proxy sockets, run CoA / Disconnect through recv_coa_server
which is the CoA server used to send CoA requests to the NAS, but
whatever. It's copied from the virtual server in the listener,
and is NOT the same as home->virtual_server
Alan T. DeKok [Fri, 2 Apr 2021 19:27:48 +0000 (15:27 -0400)]
check for Proxy-To-Originating-Realm, too
Alan T. DeKok [Fri, 2 Apr 2021 19:26:21 +0000 (15:26 -0400)]
use better names for home->virtual_server
and set home->recv_coa_server, too?
Alan T. DeKok [Fri, 2 Apr 2021 19:20:22 +0000 (15:20 -0400)]
use better names for CoA home server / pool
Alan T. DeKok [Fri, 2 Apr 2021 19:18:06 +0000 (15:18 -0400)]
use better names
Alan T. DeKok [Fri, 2 Apr 2021 12:52:05 +0000 (08:52 -0400)]
mark up this listener as doing reverse CoA, too
Alan T. DeKok [Fri, 2 Apr 2021 12:51:50 +0000 (08:51 -0400)]
fix typos from Vadim
Alan T. DeKok [Thu, 1 Apr 2021 20:37:24 +0000 (16:37 -0400)]
skip listeners where all IDs are used
Alan T. DeKok [Thu, 1 Apr 2021 20:36:20 +0000 (16:36 -0400)]
shut up compiler
Alan T. DeKok [Thu, 1 Apr 2021 20:11:42 +0000 (16:11 -0400)]
move calls to listen_coa_free() so that we don't break things
Vadim Cargatser [Thu, 1 Apr 2021 20:04:11 +0000 (16:04 -0400)]
tests for radsec
Alan T. DeKok [Thu, 1 Apr 2021 20:03:03 +0000 (16:03 -0400)]
use proxy->vps, in line with other uses
Alan T. DeKok [Thu, 1 Apr 2021 19:54:46 +0000 (15:54 -0400)]
add WITH_COA_TUNNEL to build
Alan T. DeKok [Thu, 1 Apr 2021 19:48:46 +0000 (15:48 -0400)]
glue in the code to look up listeners by key.
* add a listen_free_all() function, which frees mainconfig.listen
and then also the listeners keyed by CoA
* put a linked list into the send_coa listeners, so that all
listeners of the same key can be found
* have each send_coa listener point to the main "key" data
structure
* the main "key" data structure contains the key name, the list
of listeners by this key, and a mutex
* added contents to init / free / add / delete / find functions
Alan T. DeKok [Thu, 1 Apr 2021 18:37:29 +0000 (14:37 -0400)]
respect Proxy-To-Originating-Realm in request_coa_originate()
this isn't entirely the correct name for how we use the attribute,
but it's at least consistent with the rest of the server.
Alan T. DeKok [Thu, 1 Apr 2021 18:17:14 +0000 (14:17 -0400)]
make request_coa_originate() follow the other methods
Alan T. DeKok [Thu, 1 Apr 2021 15:24:45 +0000 (11:24 -0400)]
allow for reverse coa proxying in request_will_proxy()
Add new Proxy-To-Originating-Realm attribute, and change
TCP-Session-Key to Originating-Realm-Key, which is perhaps
a little clearer.
also note that when we automatically create a home server
for incoming TLS connections, we set home->server, not
home->coa_server
Alan T. DeKok [Thu, 1 Apr 2021 15:07:05 +0000 (11:07 -0400)]
track the number of IDs used, so that we can allocate a free listener
Alan T. DeKok [Thu, 1 Apr 2021 14:43:48 +0000 (10:43 -0400)]
start of add / delete / lookup API for reverse coa listeners
Alan T. DeKok [Thu, 1 Apr 2021 14:09:51 +0000 (10:09 -0400)]
process coa replies through the coa server
Alan T. DeKok [Thu, 1 Apr 2021 13:41:23 +0000 (09:41 -0400)]
more descriptive errors for people who don't read the documentation
Alan T. DeKok [Thu, 1 Apr 2021 12:45:45 +0000 (08:45 -0400)]
rearrange brackets to quiet scan
Alan T. DeKok [Wed, 31 Mar 2021 20:09:25 +0000 (16:09 -0400)]
only define COA_TUNNEL if we have WITH_TLS
Alan T. DeKok [Wed, 31 Mar 2021 20:06:36 +0000 (16:06 -0400)]
let's define TCP-Session-Key
Alan T. DeKok [Wed, 31 Mar 2021 20:04:47 +0000 (16:04 -0400)]
build without CoA tunnels
Alan T. DeKok [Wed, 31 Mar 2021 19:27:37 +0000 (15:27 -0400)]
add the listener by key if required
so that when doing reverse proxying, we can find equivalent
listeners by key
Alan T. DeKok [Wed, 31 Mar 2021 18:44:12 +0000 (14:44 -0400)]
use listener->fd, not request->packet->sockfd
Alan T. DeKok [Wed, 31 Mar 2021 18:41:17 +0000 (14:41 -0400)]
look for CoA requests from a home server, and send replies
Alan T. DeKok [Wed, 31 Mar 2021 17:04:34 +0000 (13:04 -0400)]
add / delete incoming sockets to proxy list, if they're send_coa
Alan T. DeKok [Wed, 31 Mar 2021 16:52:25 +0000 (12:52 -0400)]
originate CoA requests to the NAS, and deal with the replies
Alan T. DeKok [Wed, 31 Mar 2021 16:51:48 +0000 (12:51 -0400)]
add and parse CoA fields for incoming listeners
Alan T. DeKok [Wed, 31 Mar 2021 15:53:37 +0000 (11:53 -0400)]
add feature flag
Alan T. DeKok [Wed, 31 Mar 2021 13:52:41 +0000 (09:52 -0400)]
add WITH_COA_TUNNEL definition
along with recv_coa functionality in the home server definition.
and parse / verify the home server configuration for recv coa
Alan T. DeKok [Wed, 31 Mar 2021 13:05:16 +0000 (09:05 -0400)]
add and use separate function for sending to a proxy listener
Alan T. DeKok [Wed, 31 Mar 2021 12:47:58 +0000 (08:47 -0400)]
move encode/decode for proxies to their own fields
Alan T. DeKok [Fri, 2 Apr 2021 18:01:44 +0000 (14:01 -0400)]
use better name
Alan T. DeKok [Fri, 2 Apr 2021 17:35:35 +0000 (13:35 -0400)]
make the TLS session information usable.
The code was originally written for TLS 1.0, and not updated
since then. Which means for a very long time, it was printing
TLS version numbers and lengths, but nothing about what was
actually going on. This change means that the output is rather
a lot more understandable.
Alan T. DeKok [Fri, 2 Apr 2021 17:00:28 +0000 (13:00 -0400)]
use correct parameter
Jorge Pereira [Fri, 2 Apr 2021 15:06:20 +0000 (12:06 -0300)]
Fix EAP input tests
Don't need to inform the 'ca_cert=...' cert files.
Jorge Pereira [Fri, 2 Apr 2021 13:55:59 +0000 (10:55 -0300)]
Fix CI EAP tests
Lets use our eapol_test specific version due to we expect to have the
TLS versions on/off options.
Jorge Pereira [Fri, 2 Apr 2021 13:55:18 +0000 (10:55 -0300)]
Fix EAP tests against specific TLS versions
We just need the tls_disable_tlsvXX=1 due to hostapd enables all TLS
versions.
Jorge Pereira [Fri, 2 Apr 2021 01:47:48 +0000 (22:47 -0300)]
Fix EAP tests allowing 'make -C src/tests/ tests.eap'
Even we should use the same 'eapol_test' binary among all systems. then,
just call the wrapper $(top_builddir)/scripts/ci/eapol_test-build.sh
Alan T. DeKok [Fri, 2 Apr 2021 16:32:50 +0000 (12:32 -0400)]
run policies to see if we can accept the RadSec connection
Alan T. DeKok [Fri, 2 Apr 2021 13:29:34 +0000 (09:29 -0400)]
don't delay responses to Status-Server
Alan T. DeKok [Fri, 2 Apr 2021 12:56:26 +0000 (08:56 -0400)]
gracefully handle closed connections
Alan T. DeKok [Fri, 2 Apr 2021 12:05:17 +0000 (08:05 -0400)]
handle SSL_ERROR_ZERO_RETURN a little more politely.
Alan T. DeKok [Fri, 2 Apr 2021 11:54:34 +0000 (07:54 -0400)]
sample stunnel configuration
which makes it easier to test radsec, just using radclient
Alan T. DeKok [Fri, 2 Apr 2021 11:36:05 +0000 (07:36 -0400)]
Allow TLS 1.3 for RadSec
Alan T. DeKok [Fri, 2 Apr 2021 11:23:33 +0000 (07:23 -0400)]
fix typo
Alan T. DeKok [Fri, 2 Apr 2021 10:25:42 +0000 (06:25 -0400)]
fix typo
Alan T. DeKok [Fri, 2 Apr 2021 10:15:00 +0000 (06:15 -0400)]
note recent changes
Alan T. DeKok [Fri, 2 Apr 2021 10:13:46 +0000 (06:13 -0400)]
document suppress_secrets
Alan T. DeKok [Thu, 1 Apr 2021 21:22:44 +0000 (17:22 -0400)]
more documentation for EAP-TLS
Vadim Cargatser [Wed, 24 Mar 2021 15:22:25 +0000 (17:22 +0200)]
Looks like there is bug in tls code w/ fr_nonblock
With that RADSEC is not working at all. The issue is in this commit:
https://github.com/FreeRADIUS/freeradius-server/commit/
b6d7249be1958d0080187846d8bab1f0fae6b857
it pretends to revert erroneously deleted lines from another commit:
https://github.com/FreeRADIUS/freeradius-server/commit/
f9c2f5a55d2df71979d99708f83d52336e44ad00
The thing is that it is not only reverting deleted lines, it also adds fr_nonblock(fd) call in tls_new_client_session.
Was that done by mistake? With that SSL_connect exits immediately while we are trying to send initial Access-Request
packet in proxy_tls_send. Of course at the this time the handshake is not yet finished and SSL_connect returns with an
error. SSL_connect will return success just on the following reads in proxy_tls_recv. But here we are in the recv
callback, handlshake is done... so what, we don't have any packet to send. I have deleted this fr_nonblock(fd) call
meanwhile.
Alan T. DeKok [Thu, 1 Apr 2021 18:17:14 +0000 (14:17 -0400)]
make request_coa_originate() follow the other methods
Jorge Pereira [Thu, 1 Apr 2021 20:58:36 +0000 (17:58 -0300)]
eapol_test: Fix OSX build using clang >= 11 (#3855) (#4044)
Fixes the eapol_test build using clang >= 11
../src/radius/radius_client.c:817:24: error: cast to smaller integer type 'RadiusType' from 'void *' [-Werror,-Wvoid-pointer-to-enum-cast]
RadiusType msg_type = (RadiusType) sock_ctx;
Alan T. DeKok [Wed, 31 Mar 2021 01:54:23 +0000 (21:54 -0400)]
complain if there aren't enough fields
Alan T. DeKok [Wed, 31 Mar 2021 01:52:16 +0000 (21:52 -0400)]
let's not crash, m'kay?
Alan T. DeKok [Wed, 31 Mar 2021 01:45:53 +0000 (21:45 -0400)]
update examples
Alan T. DeKok [Mon, 29 Mar 2021 23:08:07 +0000 (19:08 -0400)]
correct samples
Alan T. DeKok [Sun, 28 Mar 2021 14:24:35 +0000 (10:24 -0400)]
add more WARNINGs so that people who read them will be enlightened.
The default configuration depends on either User-Name or
Stripped-User-Name containing the identity of the user logging in.
If the identity is anonymized, and there's no Stripped-User-Name,
we need to warn the administrator that there is not enough
information to identify the user.
Alan T. DeKok [Sat, 27 Mar 2021 13:58:50 +0000 (09:58 -0400)]
don't print "name name" if we find a duplicate module name
Alan T. DeKok [Fri, 26 Mar 2021 14:01:17 +0000 (10:01 -0400)]
typo
Alan T. DeKok [Fri, 26 Mar 2021 14:00:55 +0000 (10:00 -0400)]
additional notes
Alan T. DeKok [Wed, 24 Mar 2021 14:22:47 +0000 (10:22 -0400)]
mark more attributes "secret"
Alan T. DeKok [Wed, 24 Mar 2021 14:20:06 +0000 (10:20 -0400)]
suppress more secrets
Alan T. DeKok [Wed, 24 Mar 2021 12:22:49 +0000 (08:22 -0400)]
typo
Alan T. DeKok [Mon, 22 Mar 2021 20:08:42 +0000 (16:08 -0400)]
use prefix, too
Alan T. DeKok [Mon, 22 Mar 2021 19:57:17 +0000 (15:57 -0400)]
suppress secrets here, too
Alan T. DeKok [Mon, 22 Mar 2021 19:53:55 +0000 (15:53 -0400)]
add and check for "suppress_secrets"
so that debug output contains fewer secrets
Alan T. DeKok [Mon, 22 Mar 2021 19:39:33 +0000 (15:39 -0400)]
add "secret" flag to attribute
so we can not print it. Sometimes. Maybe.
Alan T. DeKok [Mon, 22 Mar 2021 19:34:00 +0000 (15:34 -0400)]
Add verify_tls_client_common_name policy
Terry Burton [Mon, 22 Mar 2021 19:37:32 +0000 (19:37 +0000)]
CI package tests: Use Azure-hosted mirrors for better reliability (#3981)
Jorge Pereira [Mon, 22 Mar 2021 15:50:57 +0000 (12:50 -0300)]
:wrench: rlm_yubikey: Fix parenting issues (#4012)
Alan T. DeKok [Mon, 22 Mar 2021 13:01:53 +0000 (09:01 -0400)]
Added Centec dictionary. Fixes #4010
Terry Burton [Fri, 19 Mar 2021 23:30:37 +0000 (23:30 +0000)]
Missing subsection search entry for "refresh" cache method (#4009)
Terry Burton [Fri, 19 Mar 2021 21:44:24 +0000 (21:44 +0000)]
Typo (#4008)
Matthew Newton [Fri, 19 Mar 2021 21:14:49 +0000 (21:14 +0000)]
remove from Jenkinsfile, too
Matthew Newton [Fri, 19 Mar 2021 20:59:57 +0000 (20:59 +0000)]
update to fix CentOS' powertools breakage
Matthew Newton [Fri, 19 Mar 2021 20:51:33 +0000 (20:51 +0000)]
Remove CentOS 6 from Jenkins builds as now EOL
Alan T. DeKok [Mon, 15 Mar 2021 17:48:48 +0000 (13:48 -0400)]
whoops, need this too