-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Is there a way to manage xrdp sessions for multiple users? #820
Comments
xrdp-sesadmin utility is what you're looking for.
On Mon, Jul 17, 2017 at 8:46 AM BloodyIron ***@***.***> wrote:
I'm wondering if there's a way in xrdp to be able to look at session info
for multiple users for xrdp. Things like, kicking users, see who's
connected, how many logins currently, etc. Is this possible?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#820>, or mute the thread
<https://github.com/notifications/unsubscribe-auth/ADTH1Exe9Xny3_GIOQ9W-W6wpiNsDxNPks5sOvU4gaJpZM4OZkaV>
.
--
Idan Freiberg
PGP FP: 8108 7EC9 806E 4980 75F2 72B3 8AD3 2D04 337B 1F18
|
It looks like xrdp-sesadmin doesn't have the working functionality to kill sessions. There is a parameter available, but documentation (and testing) shows that it doesn't work. I'm on 0.9.0 and I don't see anything relevant to this in the release notes for newer versions. Being able to kill sessions is very important. Are there any plans for this? |
This doesn't seem to be implemented: cmndKill() in xrdp/sesman/tools/sesadmin.c is empty. Presumably it needs to be added to the scp (sesman protocol). On the server side, killing the session xrdp-sesman isn't enough: it needs to kill the X server and/or startwm.sh. |
That's correct. seems like we need to keep Xorg pid as well.
On Wed, Jul 19, 2017 at 11:36 PM Ben Cohen ***@***.***> wrote:
This doesn't seem to be implemented: cmndKill() in
xrdp/sesman/tools/sesadmin.c is empty.
Presumably it needs to be added to the scp (sesman protocol). On the
server side, killing the session xrdp-sesman isn't enough: it needs to kill
the X server and/or startwm.sh.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#820 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ADTH1JSkLHWoQonJ-C8OAURBSK5DDPpOks5sPmjigaJpZM4OZkaV>
.
--
Idan Freiberg
PGP FP: 8108 7EC9 806E 4980 75F2 72B3 8AD3 2D04 337B 1F18
|
How hard do you see this being to implement? |
I think this sort of thing is easier with my shared memory change (pull request #819). We could add fields for the Xorg pid (and the wm pid if you like) and the session instance process of xrdp-sesman can set them in session_start_fork(). Then the daemon instance can see those pids to kill them. (Otherwise it will have to walk the processes tree in /proc.) Btw I think it would be a good idea for each xrdp-sesman session instance (and descendants) to get a new Linux session (SID). |
Today i had the problem to kill a bunch of sessions. After looking at the output of 'ps axjf' i wrote a little tool for that: #include <unistd.h> Basically the idea is to get the process group pid of the sesman process and send TERM to every process in this process group. It seems to work, everything started by sesman including sesman was terminated. sid could work too, but i'm no expert. |
I would also like to have xrdp-sesman list me all users having a session. When I am sure I don't have a session and check with I have found this useful to check the logs: The used xrdp versions are: also waiting for #1302 |
i've got some |
Thanks @alexmyczko By all means post it - it may well be useful to other users. |
Ok it wasn't written yet, but this works for me. Enjoy! https://github.com/alexmyczko/autoexec.bat/blob/master/xrdpctl |
I'm wondering if there's a way in xrdp to be able to look at session info for multiple users for xrdp. Things like, kicking users, see who's connected, how many logins currently, etc. Is this possible?
The text was updated successfully, but these errors were encountered: