I have experience doing something similar, but not identical. To answer your questions in turn:
I am planning to run MC22 on a Linux host in headless operation. So as far as I could find out setting up the MC22 still requires an installation of X. Is that correct? Is there no other way to configure MC22 through a config file and start it headless? I did read of the "/medieserver" command but as far as I can tell setting it up still requires some form of UI.
MC requires a running xserver to start. That xserver can be remote or local, but by far the easiest way to deal with it is to setup an extremely lightweight x window manager (like openbox) on the server. Total ram and CPU use in that scenario is quite low (Mediacenter uses far more RAM than X11 on my server).
Due to some networking limitations I need to tunnel my connection through SSH in order to get into the network. So my system involves 3 machines.
* One machine running MC22 that has access to the media files.
* One proxy machine that just tunnels through SSH and makes the default MC22 media server port accessible.
* One or more clients that connect through the proxy.
Does anyone have experience with a setup like that? The connection bandwidth of the proxy should be around 100Mbit/s and for the server itself there should also be plenty of upload speed. Do you think that the SSH tunnel will have any performance impact that might make this solution not feasible?
The word "client" is equivocal here; assuming that you mean using a separate MediaCenter instance running locally on a client to connect to the server's MediaCenter instance using the JRiver library server interface tunneled through ssh, your proposed solution should work fine for audio and low bitrate video. If you mean instead trying to use your client PC as an X11 client, X forwarding over SSH is very, very slow and you'd be better off using VNC in almost all cases.
That said, you'd probably get better results (lower CPU usage and higher throughput) with an actual VPN setup (which is how my own server is configured) rather than trying to create a pseudo-VPN with ssh. You could also potentially cut out the third box (the proxy box) with a VPN setup. But it sounds like you may not have full control over configuration.
I would greatly appreciate your help before I try to set everything up just to notice that it can not work in the first place.
As long as you can manage the traffic so that it arrives at the correct port on the server, it should work. As I said, I use a VM running OpenVPN to access my server when I'm out of the house and it works great. It's just a question of performance.