No. There is no website to log into and no server to run. It is one script you run in your own terminal.
Yes — any VPS that accepts SSH. Change only the name and host per VPS.
PowerShell: connect-vps.ps1. Git Bash or WSL: connect-vps.sh. See the Windows tab for the full comparison. A .sh file does not run in PowerShell or CMD, and a .ps1 file does not run in CMD.
Unblock just this file: Unblock-File .\connect-vps.ps1, then run it again. Or run it once without changing any policy: powershell -ExecutionPolicy Bypass -File .\connect-vps.ps1 -Name vps2 -Host <VPS-IP>
Windows OpenSSH has no ssh-copy-id. The PowerShell script copies the public key with a plain ssh command instead, sending only the key type + base64 body so quoting cannot mangle it.
Yes. Run the script once on each device. Each device gets its own key; the VPS accepts all of them.
No. If the VPS asks for a password on first copy, you type it only in your own terminal, at that prompt. Neither script stores, logs, or prints it, and neither puts it in a file, an environment variable, or a command. Never send a VPS password in chat, email, or a screenshot.
No. Only the .pub file is sent. The private key never leaves your device.
Check the IP, user, and port, then run again with the same alias — the block will be replaced, not duplicated. If the password was not accepted on first copy, no config change was made yet.
Tested, with no real VPS contact: Bash syntax, help, dry-run, and temp-HOME runs (key reuse, backup, same-alias replacement, validation failures); PowerShell parse check, help, dry-run, validation failures, and a mock-ssh temp-HOME run (config replacement, backup, other hosts preserved, key sent intact). Not tested: a real VPS key copy, a real Windows PowerShell run, and a real phone (Termux) run. Test those yourself on a VPS you choose. Both scripts contact no VPS in dry-run mode.