I have a Pi running on a 4G network (RPI1) which means it doesn't have its own IP and can't be forwarded. I want to access a port on this pi for video monitoring, but that won't be possible. I have another Pi (RPI2) which CAN portforward. Now the idea is that RPI1 connects to RPI2 permanently, and that I can access RPI1 by connecting to RPI2.
Appearently I'm not the first person trying this, since this is called "reverse SSH tunnel". Now I've been Googling a while, and entering some commands for a while, and I still dont understand how it works really.
* Do I have to enter a command only on RPI1 to connect to RPI2, or do I also need to run a command on RPI2?
* Which commands do I have to run in my case? I've been trying ports on every place a port is needed, but couldn't get it to work. Every place on the internet names the parameters different in their explanation and I am still confused by what is what, and what command has to be entered where, etc
* How can I keep this connection running on between both Pi's permanently? I assume I need a script on both Pi's that runs the command on boot again?

I created this scheme with my situation. I want to access RPI1 with my computer (the SSH, but also another port if possible)
Hope someone can help me with this.
Thanks in advance!