Connection ID issue using anyconnect client
Martin Oehler
martin.oehler at gmx.net
Tue Sep 27 05:32:31 PDT 2016
Hello Nikos,
On Tue, Sep 27, 2016 at 09:10:47AM +0200, Nikos Mavrogiannopoulos wrote:
> On Sun, Sep 25, 2016 at 5:50 PM, Martin Oehler <martin.oehler at gmx.net> wrote:
>
> You are right. The anyconnect client gets initially handled by a
> different process than the one finally gets to handle it. The
> openconnect on the other hand uses a single process throughout its
> lifetime thus it is reported correctly. What we can do for the former
> client is to update the reported nas-port on the subsequent accounting
> messages:
>
> Could you try out the following branch and check whether it addresses
> the nas-port issue?
> https://gitlab.com/ocserv/ocserv/merge_requests/13
thanks for your effort. I tried the patch, it does what you wrote but
I feel like we should discuss whether this is a good solution.
After adding some debug statements I am able to understand what is going
on:
1) The process id that is transferred with
Acct-Status-Type = Start
to freeradius is used for the initial nas-port id.
Sep 27 11:14:03 sec-mod: process_worker_packet pid=23678
Sep 27 11:14:03 radius-auth: communicating username (example) and
password
2) The connect-script receives the id that is used by a later
process:
Sep 27 11:14:05 sec-mod: process_worker_packet pid=23681
Sep 27 11:14:05 radius-auth: opening session
DElVwYHxWp0x4EmrYEWWZGFLRsu1jDQZKvxhD2oOHKE=
Sep 27 11:14:06 sec-mod: initiating session for user 'example'
(session: DElVwY)
Sep 27 11:14:06 OCSERV Connection: id=23681, reason=connect, ...
Sep 27 11:14:15 OCSERV Disconnect: id=23681, reason=disconnect, ...
Here we have the id 23681 vs 23678 conflict.
3) Using your patch, the is is changed, but freeradius is not only
changing the nas-port but also the Acct-Unique-Session-Id.
radacct log:
Tue Sep 27 11:14:05 2016
Acct-Status-Type = Start
Acct-Session-Id = "DElVwYHxWp0x4EmrYEWWZGFLRsu1jDQZKvxhD2oOHKE="
NAS-Port = 23678
Acct-Unique-Session-Id = "58c128d0a972a6f4"
Tue Sep 27 11:14:15 2016
Acct-Status-Type = Interim-Update
Acct-Session-Id = "DElVwYHxWp0x4EmrYEWWZGFLRsu1jDQZKvxhD2oOHKE="
NAS-Port = 23681
Acct-Unique-Session-Id = "670d65df6cca4478"
Tue Sep 27 11:14:15 2016
Acct-Status-Type = Stop
Acct-Session-Id = "DElVwYHxWp0x4EmrYEWWZGFLRsu1jDQZKvxhD2oOHKE="
NAS-Port = 23681
Acct-Unique-Session-Id = "670d65df6cca4478"
Without the patch, the Acct-Unique-Session-Id stays the same. I'm unsure
whether the change of the Acct-Unique-Session-Id is a desired behaviour,
it doesn't seem like the behaviour one would expect.
What do you think?
Kind regards,
Martin
More information about the openconnect-devel
mailing list