Mount a Folder from a Remote Windows PC over the Internet Using rclone and WinFsp
This guide explains how to securely share a folder from one Windows PC over the Internet and mount it as a normal drive letter on another Windows PC. 🖥️➡️🌍➡️💻
🧰 What You Need
| Computer | Required Software |
|---|---|
| Home PC / Server | rclone |
| Remote PC / Client | rclone + WinFsp |
🗺️ How the Connection Works
Home PC / server
└── Local folder: E:\Shared\User1
└── rclone serve sftp on internal port 2022
└── Router forwards external port 48222
└── sftp.example.com:48222
└── Remote PC / client
└── rclone SFTP remote: my_cloud
└── rclone mount + WinFsp
└── Drive S:
🔐 Each
rclone serve sftpprocess exposes only the folder or remote supplied to that process. The SFTP user cannot browse above that root.
📚 Contents
- Home PC — Server
- Remote PC — Client
- Enable SFTP Host-Key Validation
- Test the SFTP Remote
- Mount the Remote Folder as Drive S:
- Adding a Second User
- Same User and Password, Different Folder
- Troubleshooting
- Final Configuration Summary
🏠 Home PC — Server
The home PC only needs rclone. WinFsp is not required on the server.
1. 📁 Choose the Folder to Share
Example:
E:\Shared\User1
This folder becomes the root directory visible to the SFTP user. The user cannot browse above it through this SFTP connection.
💡 To share the root of a drive, use a dot after the backslash. Example:
E:\.
2. 📌 Give the Server PC a Fixed LAN IP
In this example, the server PC uses:
192.168.2.6
Create a DHCP address reservation in your router so that the server PC always receives the same LAN IP address.
3. 🧱 Create a Windows Firewall Rule
Open PowerShell as Administrator and run:
New-NetFirewallRule `
-DisplayName "rclone SFTP 2022" `
-Direction Inbound `
-Protocol TCP `
-LocalPort 2022 `
-Action Allow
4. ⚙️ Create the Server VBS Script
Save the script as:
D:\utils\rclone\start-sftp-user1.vbs
Another suitable location is fine, but remember to update every path used in this guide.
Option Explicit
Dim WshShell, Q, RcloneExe
Dim ShareFolder, UserName, Password, Cmd
Set WshShell = CreateObject("WScript.Shell")
Q = Chr(34)
RcloneExe = "D:\utils\rclone\rclone.exe"
ShareFolder = "E:\Shared\User1"
UserName = "user1"
Password = "REPLACE-WITH-A-STRONG-PASSWORD"
Cmd = Q & RcloneExe & Q & _
" serve sftp " & Q & ShareFolder & Q & _
" --addr :2022" & _
" --user " & Q & UserName & Q & _
" --pass " & Q & Password & Q & _
" --log-file " & Q & "D:\utils\rclone\sftp-user1.log" & Q & _
" --log-level NOTICE" & _
" --log-file-max-size 10M" & _
" --log-file-max-backups 5" & _
" --log-file-max-age 30d" & _
" --log-file-compress"
WshShell.Run Cmd, 0, False
Set WshShell = Nothing
Change these values:
ShareFolder = "E:\Shared\User1"
UserName = "user1"
Password = "REPLACE-WITH-A-STRONG-PASSWORD"
⚠️ Password warning: The password is stored as plain text in the VBS file and may also be visible to someone with sufficient access to inspect running processes. Protect the VBS file with Windows permissions and do not share it.
🚫 For this simple VBS format, avoid using a double quotation mark character (
") inside the password.
5. ▶️ Start the SFTP Server
Double-click:
start-sftp-user1.vbs
The SFTP server runs silently without displaying a Command Prompt window.
6. 👂 Confirm That the Server Is Listening
Run:
netstat -ano | findstr :2022
You should see something similar to:
TCP 0.0.0.0:2022 0.0.0.0:0 LISTENING
The server log is stored at:
D:\utils\rclone\sftp-user1.log
The log rotation settings will:
- 🔄 Rotate the log when it reaches 10 MB.
- 🗂️ Keep a maximum of five old logs.
- 🧹 Delete logs older than 30 days.
- 🗜️ Compress rotated logs as
.gzfiles.
7. 🌍 Configure Router Port Forwarding
Create this port-forwarding rule:
Service Name: rclone SFTP user1
Device IP Address: 192.168.2.6
External Port: 48222
Internal Port: 2022
Protocol: TCP
Enabled: Yes
The connection path is:
sftp.example.com:48222
↓
Home router
↓
192.168.2.6:2022
↓
rclone serve sftp
🛡️ Using a high external port reduces random background scans, but it does not replace a strong password, host-key validation, firewall protection, and regular rclone updates.
8. 🌐 Configure Dynamic DNS
The hostname used in this example is:
sftp.example.com
It must resolve directly to the public IP address of your home Internet connection.
Check it with:
Resolve-DnsName sftp.example.com
If Cloudflare DNS is used, configure the SFTP hostname as:
DNS only
Do not use the normal orange-cloud proxy for this hostname because it does not forward arbitrary SFTP ports.
9. 🧪 Test Access from the Internet
From the client PC, run:
Test-NetConnection sftp.example.com -Port 48222
The result should show:
TcpTestSucceeded : True
For a proper external test, use a different Internet connection, such as a mobile hotspot. Testing from the same home network depends on whether your router supports NAT loopback.
10. 🚀 Automatically Start the Server after Login
Press:
Win + R
Enter:
shell:startup
Place a shortcut to this file in the Startup folder:
D:\utils\rclone\start-sftp-user1.vbs
The SFTP server will start automatically after the Windows user signs in.
📝 Startup-folder shortcuts run only after that Windows account signs in. Use Task Scheduler instead when the SFTP server must start without an interactive login.
11. 🔑 Do Not Delete the Server Host Keys
rclone serve sftp automatically generates SSH host keys when no explicit --key option is supplied. It then caches those keys for later use.
If the keys are deleted or regenerated, clients using host-key validation will report a mismatch and refuse the connection.
To check rclone's configuration and cache locations, run:
D:\utils\rclone\rclone.exe config paths
The host-key directory is normally:
<Cache dir>\serve-sftp
Example:
C:\Users\user1\AppData\Local\rclone\serve-sftp
Back up the entire serve-sftp directory. 🔐💾
💻 Remote PC — Client
The client PC needs:
1. 🪟 Install WinFsp
Install WinFsp using the standard installation options. WinFsp allows rclone to create a Windows drive letter.
2. 📦 Install rclone
In this example, rclone is stored at:
D:\utils\rclone\rclone.exe
Check that it works:
D:\utils\rclone\rclone.exe version
3. 🔌 Create the SFTP Remote
Run:
D:\utils\rclone\rclone.exe config
Create a new remote using these settings:
Remote name: my_cloud
Storage type: sftp
Host: sftp.example.com
User: user1
Port: 48222
Password: The password configured on the server
Leave the other advanced settings at their defaults initially.
Check the configuration:
D:\utils\rclone\rclone.exe config show my_cloud
It should look similar to:
[my_cloud]
type = sftp
host = sftp.example.com
user = user1
port = 48222
pass = *** ENCRYPTED ***
🛡️ Enable SFTP Host-Key Validation
Without host-key validation, the SFTP connection is encrypted, but the client does not verify that it is connecting to the intended server.
🔎 Important:
ssh-keyscanretrieves the key presented by the server. For stronger verification, compare the resulting fingerprint with the server's actual host-key fingerprint through a trusted method before accepting it.
1. 📁 Create a Folder for the Known Hosts File
mkdir "D:\utils\rclone\ssh" 2>nul
2. 🔍 Retrieve the Server Host Keys
ssh-keyscan -p 48222 -t rsa,ecdsa,ed25519 sftp.example.com > "D:\utils\rclone\ssh\my_cloud-known_hosts"
Messages such as this are normal:
# sftp.example.com:48222 SSH-2.0-rclone/v1.74.3
3. 📄 Check the Known Hosts File
type "D:\utils\rclone\ssh\my_cloud-known_hosts"
The file should contain entries similar to:
[sftp.example.com]:48222 ssh-rsa ...
[sftp.example.com]:48222 ecdsa-sha2-nistp256 ...
[sftp.example.com]:48222 ssh-ed25519 ...
4. 🔗 Add the Known Hosts File to the rclone Configuration
D:\utils\rclone\rclone.exe config update my_cloud known_hosts_file "D:\utils\rclone\ssh\my_cloud-known_hosts"
Check the configuration again:
D:\utils\rclone\rclone.exe config show my_cloud
The completed configuration should look similar to:
[my_cloud]
type = sftp
host = sftp.example.com
user = user1
port = 48222
pass = *** ENCRYPTED ***
shell_type = unix
md5sum_command = md5sum
sha1sum_command = sha1sum
known_hosts_file = D:\utils\rclone\ssh\my_cloud-known_hosts
The following setting is normal when connecting to rclone serve sftp, even when the server PC runs Windows:
shell_type = unix
✅ Test the SFTP Remote
Before mounting the remote as a drive, test directory access:
D:\utils\rclone\rclone.exe lsd my_cloud: -vv
If the connection works, rclone will display the folders inside the shared directory.
The following warning should no longer appear:
No host key validation is being performed
💽 Mount the Remote Folder as Drive S:
1. 📝 Create the Client Mount VBS Script
Save the file as:
D:\utils\rclone\mount-my_cloud.vbs
Option Explicit
Dim WshShell, RcloneExe, Cmd, Q
Set WshShell = CreateObject("WScript.Shell")
Q = Chr(34)
RcloneExe = "D:\utils\rclone\rclone.exe"
Cmd = Q & RcloneExe & Q & _
" mount my_cloud: S:" & _
" --vfs-cache-mode full" & _
" --cache-dir " & Q & "E:\rclone-cache\my_cloud" & Q & _
" --vfs-cache-max-age 24h" & _
" --vfs-cache-max-size 100G" & _
" --dir-cache-time 30s" & _
" --poll-interval 0" & _
" --network-mode" & _
" --volname " & Q & "My_Cloud" & Q & _
" --transfers 4" & _
" --checkers 8" & _
" --log-file " & Q & "D:\utils\rclone\mount-my_cloud.log" & Q & _
" --log-level NOTICE" & _
" --log-file-max-size 10M" & _
" --log-file-max-backups 5" & _
" --log-file-max-age 30d" & _
" --log-file-compress" & _
" --file-perms 0777"
WshShell.Run Cmd, 0, False
Set WshShell = Nothing
The --sftp-known-hosts-file option is not needed in this VBS script because the known hosts file is already saved inside the my_cloud remote configuration.
2. ▶️ Start the Mount
Double-click:
D:\utils\rclone\mount-my_cloud.vbs
The remote folder should appear in File Explorer as:
S: My_Cloud
The mounted drive behaves similarly to a cloud-storage drive:
- ☁️ The entire remote folder is not downloaded automatically.
- 📥 Files are downloaded when opened.
- ⚡ Read and write operations use the local VFS cache.
- ✏️ Files can be opened, copied, renamed, edited, and deleted.
- 🏠 The home PC must remain powered on and connected to the Internet.
3. 🗃️ Client Cache Location
E:\rclone-cache\my_cloud
The configured limits are:
Maximum cache size: 100 GB
Maximum cache age: 24 hours
Files that are open or still being uploaded may temporarily remain in the cache even after a configured limit is reached.
4. 📜 Client Log File
D:\utils\rclone\mount-my_cloud.log
The log rotation settings are:
Maximum size: 10 MB per log
Maximum backups: 5
Maximum age: 30 days
Compression: Enabled
5. 🚀 Automatically Mount the Drive after Login
Press:
Win + R
Enter:
shell:startup
Place a shortcut to this file in the Startup folder:
D:\utils\rclone\mount-my_cloud.vbs
The remote drive will mount automatically after the Windows user signs in.
👥 Adding a Second User
The simplest method is to run another rclone serve sftp process using a different folder, username, and port.
Example second-user configuration:
Shared folder: E:\Shared\User2
Username: user2
Internal port: 2023
External port: 48223
Create another firewall rule on the server:
New-NetFirewallRule `
-DisplayName "rclone SFTP 2023" `
-Direction Inbound `
-Protocol TCP `
-LocalPort 2023 `
-Action Allow
Create another router port-forwarding rule:
TCP 48223 → 192.168.2.6:2023
The second user's client configuration could be:
Remote name: my_cloud-user2
Host: sftp.example.com
Username: user2
Port: 48223
Drive: T:
Each SFTP process has its own root folder. User 1 cannot browse User 2's shared folder, and User 2 cannot browse User 1's shared folder. 🔒
👤🔁 Same Username and Password, Different Folder
You can let the same username and password access another folder by running two SFTP processes with:
- 📁 Different shared folders.
- 🔌 Different internal listening ports.
- 🌍 Different external router ports.
- 👤 The same username.
- 🔐 The same password.
🧠 How it works: The username does not select the folder. The port selects which
rclone serve sftpprocess receives the connection, and each process has its own root folder.
This example adds a second folder for user1:
First folder:
Folder: E:\Shared\User1
Internal port: 2022
External port: 48222
Remote: my_cloud
Drive: S:
Second folder:
Folder: E:\Shared\User1-Archive
Internal port: 2024
External port: 48224
Remote: my_cloud-folder2
Drive: U:
Credentials for both:
Username: user1
Password: The same password
🏠 Home PC — Server
Complete all the steps in this section on the home PC that contains the shared folders.
1. ⚙️ Modify the Existing Server VBS
You do not need to create a second server VBS file. Modify the existing script so that one VBS starts both SFTP server processes.
Use this existing file:
D:\utils\rclone\start-sftp-user1.vbs
Replace its contents with:
Option Explicit
Dim WshShell, Q, RcloneExe
Dim UserName, Password
Dim ShareFolder1, ShareFolder2
Dim Cmd1, Cmd2
Set WshShell = CreateObject("WScript.Shell")
Q = Chr(34)
RcloneExe = "D:\utils\rclone\rclone.exe"
UserName = "user1"
Password = "REPLACE-WITH-A-STRONG-PASSWORD"
ShareFolder1 = "E:\Shared\User1"
ShareFolder2 = "E:\Shared\User1-Archive"
Cmd1 = Q & RcloneExe & Q & _
" serve sftp " & Q & ShareFolder1 & Q & _
" --addr :2022" & _
" --user " & Q & UserName & Q & _
" --pass " & Q & Password & Q & _
" --log-file " & Q & "D:\utils\rclone\sftp-user1.log" & Q & _
" --log-level NOTICE" & _
" --log-file-max-size 10M" & _
" --log-file-max-backups 5" & _
" --log-file-max-age 30d" & _
" --log-file-compress"
Cmd2 = Q & RcloneExe & Q & _
" serve sftp " & Q & ShareFolder2 & Q & _
" --addr :2024" & _
" --user " & Q & UserName & Q & _
" --pass " & Q & Password & Q & _
" --log-file " & Q & "D:\utils\rclone\sftp-user1-folder2.log" & Q & _
" --log-level NOTICE" & _
" --log-file-max-size 10M" & _
" --log-file-max-backups 5" & _
" --log-file-max-age 30d" & _
" --log-file-compress"
WshShell.Run Cmd1, 0, False
WshShell.Run Cmd2, 0, False
Set WshShell = Nothing
✅ Double-clicking one server VBS file now starts both SFTP processes. Both processes use the same username and password, but each process exposes a different folder through a different port.
2. 🧱 Add a Firewall Rule for Internal Port 2024
Open PowerShell as Administrator:
New-NetFirewallRule `
-DisplayName "rclone SFTP 2024" `
-Direction Inbound `
-Protocol TCP `
-LocalPort 2024 `
-Action Allow
The existing firewall rule for internal port 2022 should remain enabled.
3. 🌍 Add a Router Port-Forwarding Rule
Add this rule for the second folder:
Service Name: rclone SFTP user1 folder2
Device IP Address: 192.168.2.6
External Port: 48224
Internal Port: 2024
Protocol: TCP
Enabled: Yes
The two router rules should now be:
First folder:
TCP 48222 → 192.168.2.6:2022
Second folder:
TCP 48224 → 192.168.2.6:2024
The second connection path is:
sftp.example.com:48224
↓
Home router
↓
192.168.2.6:2024
↓
E:\Shared\User1-Archive
4. ▶️ Start Both SFTP Server Processes
Double-click the single server script:
D:\utils\rclone\start-sftp-user1.vbs
Confirm that both internal ports are listening:
netstat -ano | findstr /C:":2022" /C:":2024"
You should see both ports in the LISTENING state:
TCP 0.0.0.0:2022 0.0.0.0:0 LISTENING
TCP 0.0.0.0:2024 0.0.0.0:0 LISTENING
5. 🚀 Automatically Start Both Servers after Login
The existing Startup-folder shortcut can continue pointing to:
D:\utils\rclone\start-sftp-user1.vbs
Because the single VBS now starts both SFTP processes, no second Startup shortcut is required.
💻 Remote PC — Client
Complete all the steps in this section on the remote PC where the folders will be mounted as Windows drives.
1. 🧪 Test the New External Port
Test the existing and new SFTP ports:
Test-NetConnection sftp.example.com -Port 48222
Test-NetConnection sftp.example.com -Port 48224
Both tests should show:
TcpTestSucceeded : True
⚠️ Do not continue until port
48224succeeds. The second SFTP server process must be running and reachable before the client can retrieve its host key.
2. 📋 Copy the Existing rclone Remote
Run:
D:\utils\rclone\rclone.exe config
At the main menu:
- Enter
cfor Copy remote. 📋 - Select the existing remote
my_cloud. - Name the copy
my_cloud-folder2. - Quit the configuration menu after the copy is created.
c) Copy remote
Existing remote:
my_cloud
New remote name:
my_cloud-folder2
The copied remote already contains the same hostname, username, encrypted password, and other SFTP settings.
3. 🔑 Create a Known Hosts File for Port 48224
🔐 Important distinction: You normally do not generate a new server host key for the second SFTP process. Both server processes use rclone's cached host keys unless different key files are explicitly configured. The client still needs a separate known-hosts entry because
sftp.example.com:48224is a different hostname-and-port combination fromsftp.example.com:48222.
Create a separate known-hosts file:
ssh-keyscan -p 48224 -t rsa,ecdsa,ed25519 sftp.example.com > "D:\utils\rclone\ssh\my_cloud-folder2-known_hosts"
Check it:
type "D:\utils\rclone\ssh\my_cloud-folder2-known_hosts"
The entries should use port 48224:
[sftp.example.com]:48224 ssh-rsa ...
[sftp.example.com]:48224 ecdsa-sha2-nistp256 ...
[sftp.example.com]:48224 ssh-ed25519 ...
4. 🔧 Update the Copied Remote
Only the following settings must be changed:
- 🔌 Port:
48224 - 🔑 Known hosts file for port
48224
Update the copied remote:
D:\utils\rclone\rclone.exe config update my_cloud-folder2 port 48224 known_hosts_file "D:\utils\rclone\ssh\my_cloud-folder2-known_hosts"
Check the result:
D:\utils\rclone\rclone.exe config show my_cloud-folder2
It should look similar to:
[my_cloud-folder2]
type = sftp
host = sftp.example.com
user = user1
port = 48224
pass = *** ENCRYPTED ***
shell_type = unix
md5sum_command = md5sum
sha1sum_command = sha1sum
known_hosts_file = D:\utils\rclone\ssh\my_cloud-folder2-known_hosts
5. ✅ Test the Copied Remote
D:\utils\rclone\rclone.exe lsd my_cloud-folder2: -vv
If it works, rclone will list the folders inside:
E:\Shared\User1-Archive
6. 💽 Modify the Existing Mount VBS
You do not need to create a second mount VBS file. Modify the existing script so that one VBS mounts both remotes.
Use this existing file:
D:\utils\rclone\mount-my_cloud.vbs
Replace its contents with:
Option Explicit
Dim WshShell, RcloneExe, Q
Dim Cmd1, Cmd2
Set WshShell = CreateObject("WScript.Shell")
Q = Chr(34)
RcloneExe = "D:\utils\rclone\rclone.exe"
Cmd1 = Q & RcloneExe & Q & _
" mount my_cloud: S:" & _
" --vfs-cache-mode full" & _
" --cache-dir " & Q & "E:\rclone-cache\my_cloud" & Q & _
" --vfs-cache-max-age 24h" & _
" --vfs-cache-max-size 100G" & _
" --dir-cache-time 30s" & _
" --poll-interval 0" & _
" --network-mode" & _
" --volname " & Q & "My_Cloud" & Q & _
" --transfers 4" & _
" --checkers 8" & _
" --log-file " & Q & "D:\utils\rclone\mount-my_cloud.log" & Q & _
" --log-level NOTICE" & _
" --log-file-max-size 10M" & _
" --log-file-max-backups 5" & _
" --log-file-max-age 30d" & _
" --log-file-compress" & _
" --file-perms 0777"
Cmd2 = Q & RcloneExe & Q & _
" mount my_cloud-folder2: U:" & _
" --vfs-cache-mode full" & _
" --cache-dir " & Q & "E:\rclone-cache\my_cloud-folder2" & Q & _
" --vfs-cache-max-age 24h" & _
" --vfs-cache-max-size 100G" & _
" --dir-cache-time 30s" & _
" --poll-interval 0" & _
" --network-mode" & _
" --volname " & Q & "My_Cloud_Folder2" & Q & _
" --transfers 4" & _
" --checkers 8" & _
" --log-file " & Q & "D:\utils\rclone\mount-my_cloud-folder2.log" & Q & _
" --log-level NOTICE" & _
" --log-file-max-size 10M" & _
" --log-file-max-backups 5" & _
" --log-file-max-age 30d" & _
" --log-file-compress" & _
" --file-perms 0777"
WshShell.Run Cmd1, 0, False
WshShell.Run Cmd2, 0, False
Set WshShell = Nothing
✅ Double-clicking one client VBS file now mounts both remote folders as separate Windows drive letters.
7. ▶️ Mount Both Drives
Double-click:
D:\utils\rclone\mount-my_cloud.vbs
The same user will now have two separate mounted drives:
S: → E:\Shared\User1
U: → E:\Shared\User1-Archive
The drives use separate cache folders and log files:
Drive S:
Cache: E:\rclone-cache\my_cloud
Log: D:\utils\rclone\mount-my_cloud.log
Drive U:
Cache: E:\rclone-cache\my_cloud-folder2
Log: D:\utils\rclone\mount-my_cloud-folder2.log
8. 🚀 Automatically Mount Both Drives after Login
The existing Startup-folder shortcut can continue pointing to:
D:\utils\rclone\mount-my_cloud.vbs
Because the single VBS now mounts both remotes, no second Startup shortcut is required.
📋 Final Result
Home PC / Server:
1 VBS → Starts both SFTP server processes
Remote PC / Client:
1 VBS → Mounts both remote drives
Drive S: → E:\Shared\User1
Drive U: → E:\Shared\User1-Archive
💡 Alternative: To expose both folders through one port and one drive, place them under a common parent folder or serve an rclone
combineremote. Separate ports are simpler when each connection must have a different root.
🧰 Troubleshooting
❌ Port Test Fails
Test-NetConnection sftp.example.com -Port 48222
Check the following:
- ▶️ The correct SFTP server process is running.
- 🧱 Windows Firewall allows the internal TCP port.
- 🌍 The router forwards the correct external port to the correct internal port.
- 📌 The server LAN IP has not changed.
- 🌐 The DDNS hostname points to the correct public IP address.
- 🚧 The home Internet connection is not behind CGNAT.
- 🔌 No other application is already using the internal port.
For the primary connection:
TCP 48222 → 192.168.2.6:2022
For the same user's second folder:
TCP 48224 → 192.168.2.6:2024
📄 The Known Hosts File Cannot Be Found
Confirm that this file exists:
D:\utils\rclone\ssh\my_cloud-known_hosts
Recreate it with:
mkdir "D:\utils\rclone\ssh" 2>nul
ssh-keyscan -p 48222 -t rsa,ecdsa,ed25519 sftp.example.com > "D:\utils\rclone\ssh\my_cloud-known_hosts"
🔑 The Host Key Has Changed
If the SFTP server host keys were deliberately regenerated, delete and recreate the client's known-hosts file:
del "D:\utils\rclone\ssh\my_cloud-known_hosts"
ssh-keyscan -p 48222 -t rsa,ecdsa,ed25519 sftp.example.com > "D:\utils\rclone\ssh\my_cloud-known_hosts"
🚨 Only do this after confirming that the host-key change was expected. An unexpected host-key change could mean that the client is connecting to a different server.
💽 The Drive Does Not Appear
Test the remote first:
D:\utils\rclone\rclone.exe lsd my_cloud: -vv
Run the mount command directly in Command Prompt to see the error:
D:\utils\rclone\rclone.exe mount my_cloud: S: --vfs-cache-mode full --network-mode -vv
Also check the mount log:
D:\utils\rclone\mount-my_cloud.log
⚠️ The Port Is Already in Use
Find the process ID using the port:
netstat -ano | findstr :2022
Then identify the process:
tasklist /FI "PID eq REPLACE-WITH-PID"
Stop the duplicate SFTP process or assign a different unused internal port.
🌀 The VBS Script Was Started Twice
Starting the same server or mount script twice may produce a port-in-use or drive-letter-in-use error. Check Task Manager for duplicate rclone.exe processes before starting another copy.
🐢 Transfers Are Slow
- 📤 Your home Internet upload speed limits downloads from the remote PC.
- 📥 Your remote Internet download speed also matters.
- 🗄️ Many tiny files are slower than a few large files.
- 💾 A slow server disk or client cache disk can become the bottleneck.
- 📶 Wi-Fi quality may affect either side of the connection.
📋 Final Configuration Summary
🏠 Primary Folder
| Shared folder | E:\Shared\User1 |
|---|---|
| LAN IP | 192.168.2.6 |
| Internal port | 2022 |
| External port | 48222 |
| Username | user1 |
| Remote | my_cloud |
| Drive | S: |
| Cache folder | E:\rclone-cache\my_cloud |
| Known hosts | D:\utils\rclone\ssh\my_cloud-known_hosts |
👤 Same User — Second Folder
| Shared folder | E:\Shared\User1-Archive |
|---|---|
| Internal port | 2024 |
| External port | 48224 |
| Username | user1 |
| Password | Same as the primary folder |
| Remote | my_cloud-folder2 |
| Drive | U: |
| Cache folder | E:\rclone-cache\my_cloud-folder2 |
| Known hosts | D:\utils\rclone\ssh\my_cloud-folder2-known_hosts |
🌍 Router Rules
Primary folder: TCP 48222 → 192.168.2.6:2022
Second user: TCP 48223 → 192.168.2.6:2023
Same user's folder 2: TCP 48224 → 192.168.2.6:2024
🎉 You now have a private SFTP-based cloud drive hosted on your own Windows PC, complete with drive-letter mounting, VFS caching, logging, host-key validation, multiple users, and multiple folders for the same user. ☁️🏠🔐💽🚀
Comments
Post a Comment