While I am aware of rfbproxy and ffmpeg's x11grab capability, all the examples online seem to be aimed at users wanting to record their own sessions. My usage model is to maintain a (reasonably) trustworthy audit record of remote access to a system.

My problem is how to reconcile the files these create with the session metadata (notably the authenticated username). If the recording is started from within the session then I can capture the username, although this will expose the invocation to the user (e.g. if done via an XDG autostart).

(logging the input events might be a viable alternative to full video recording)

If the start/stop of the recording is not invoked from the users session, then how do I synchronize the start/stop with the beginning/ed of the users session?

Users will be connecting to a Linux desktop (I've not started thinking about how Wayland fits in all this) via VNC.

1 Answer 1


User "balanceofpain" on Reddit suggests:


FFmpeg/avconv can do that. You'd have to start it as a different user so the person audited would be unable to interfere with it. The command will be similar to:

 avconv -f x11grab -s 1366x768 -r 25 -i :0.0 /tmp/out.mpg

Remember to allow this user access to X with xhost +si:localuser:<auditorusername>


Hence I could use XDG's autostart but seperate privileges with sudo (to prevent user killing task). The remaining question is whether the recording ends at the end of the session.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .