If you have this sort of connectivity, it would definitely help all of your efforts (including port forwarding or pivoting) to get a Meterpreter session running. If you have the money, it is worth a look at Cobalt Strike as well, which has PowerShell Web Delivery, sending a Beacon implant over the network. If not, then the metasploit-framework project (MSF) is your best bet as it will provide many features including reliable network communication, transport control, timeout control (e.g., SessionCommunicationTimeout and SessionExpirationTimeout for HTTP/TLS sessions and ReverseConnectRetries for TCP sessions), stageless mode, etc.
There are many ways to get a Meterpreter session running including via Powershell (similar to the PowerShell Web Delivery technique in Cobalt Strike mentioned above, MSF has exploit/windows/smb/psexec_psh which can even be executed in DryRun mode which will just give the command necessary to run on the target host in order to feed it to MSF's exploit/multi/handler with whichever payload is desired, which can then also be upgraded to a metepreter payload using the MSF sessions command).
Once a meterpreter session is available, you can use the portfwd or autoroute directives, which are well-documented in many places. A basic example:
portfwd add -l 8080 -r 10.0.0.1 -p 443
You could also use tools such as FPipe or WinRelay to perform similar, but any of these (including meterpreter itself) could be flagged by anti-virus or IPS software or appliances running on the target network. Know your limitations.
For a port-forwarding solution in Powershell, the blog that Rory McCune referenced in his answer does provide examples in the entry called Pillage the Village.