Powershell is new to me but I want to my adventure with technology from this idea.
Let's say I'm IT admin working mobile from public internet and connecting to clients networks.
I create custom powershell scripts that I want to keep on private secured server.
Because Laptop can be lost or stolen I do not want to keep all this custom scripts on local machine.
So my question is:
How to connect to local server using powershell and use some custom scripts on client remote networks
Please see simple network diagram
I'm not sure I see the point of that. The scripts are going to have to pass through your laptop at some point, and unless you're careful to delete any traces every time, there will probably be copies of them on your drive somewhere.
If your concern is the loss or theft of the laptop, the right solution is to encrypt the laptop's drive with BitLocker or something similar. I use both a TPM and password on my laptop for this; it's about as secure as I can make it, within reason.
So you have a client, and that client needs access to your scripts, but you don't want to be a middle man for those scripts, correct?
Expose your repository to your client over VPN. You could work with your client's team to create a tunnel between the two public endpoints of those networks so that any traffic traversing them is encapsulated and encrypted.
Alternatively, you could open access to your repository for your client's source IP(s). Ideally, your repository would have a front-end that you'd be required to login to that can be encrypted via SSL or some other certificate based exchange.
There should be no need for your laptop to be a middle man.