File Transfer Guide
Learn how to upload and download files to your TinyBox VPS
Important: Use Custom SSH Port
Always use your custom SSH port (10000 + VPS ID) for file transfers. Never use port 22 - failed attempts will block your IP!
SCP (Secure Copy) - Recommended
SCP is the most secure and widely supported method for file transfers over SSH.
Upload Files to Server
# Upload single file
scp -P [YOUR_SSH_PORT] localfile.txt root@[YOUR_VPS_IP]:/home/
# Upload entire directory
scp -r -P [YOUR_SSH_PORT] local_directory/ root@[YOUR_VPS_IP]:/home/
# Example for VPS ID 123:
scp -P 10123 website.zip [email protected]:/home/
Download Files from Server
# Download single file
scp -P [YOUR_SSH_PORT] root@[YOUR_VPS_IP]:/home/serverfile.txt ./
# Download entire directory
scp -r -P [YOUR_SSH_PORT] root@[YOUR_VPS_IP]:/home/server_directory/ ./
# Example for VPS ID 123:
scp -P 10123 [email protected]:/home/backup.tar.gz ./
SFTP (SSH File Transfer Protocol)
SFTP provides an interactive session for file management, similar to FTP but secure.
Connect to SFTP
# Connect to SFTP
sftp -P [YOUR_SSH_PORT] root@[YOUR_VPS_IP]
# Example for VPS ID 123:
sftp -P 10123 [email protected]
Common SFTP Commands
# Navigation
ls # List remote files
lls # List local files
pwd # Show remote directory
lpwd # Show local directory
cd /path/to/directory # Change remote directory
lcd /local/path # Change local directory
# File Operations
put localfile.txt # Upload file
get remotefile.txt # Download file
put -r local_folder/ # Upload directory
get -r remote_folder/ # Download directory
rm filename # Delete remote file
mkdir dirname # Create remote directory
# Exit
quit # Exit SFTP session
Graphical FTP/SFTP Clients
GUI applications for easier file management with drag-and-drop functionality.
Windows
- WinSCP - Free, popular choice
- FileZilla - Cross-platform, free
- PuTTY PSCP - Command-line tool
macOS / Linux
- FileZilla - Free, cross-platform
- Cyberduck - Free, macOS/Windows
- Transmit - Paid, macOS only
Connection Settings for GUI Clients:
Protocol: SFTP (SSH File Transfer Protocol)
Host: your-server.tinybox.sh
Port: 10000 + Your VPS ID
Username: root
Authentication: Password or SSH Key
Best Practices & Tips
✓ Do This
- • Use SSH keys for authentication
- • Compress large files before transfer
- • Transfer during off-peak hours
- • Verify file integrity after transfer
- • Use rsync for incremental backups
✗ Avoid This
- • Never use port 22
- • Don't transfer uncompressed databases
- • Avoid transferring system files
- • Don't ignore file permissions
- • Never store passwords in scripts
Advanced: Rsync for Synchronization
Rsync is perfect for backups and keeping directories synchronized.
# Sync local to remote (upload)
rsync -avz -e "ssh -p [YOUR_SSH_PORT]" ./local_folder/ root@[YOUR_VPS_IP]:/home/remote_folder/
# Sync remote to local (download)
rsync -avz -e "ssh -p [YOUR_SSH_PORT]" root@[YOUR_VPS_IP]:/home/remote_folder/ ./local_folder/
# Example with progress and delete old files:
rsync -avz --progress --delete -e "ssh -p 10123" ./website/ [email protected]:/var/www/html/
Rsync Options Explained:
-aArchive mode (preserves permissions, timestamps, etc.)-vVerbose output-zCompress data during transfer--progressShow transfer progress--deleteDelete files not present in source
Common Issues & Solutions
Connection refused or timeout
Check that you're using the correct SSH port (10000 + VPS ID) and your IP isn't blocked.
Permission denied
Verify your username (root) and password/SSH key. Check destination directory permissions.
Transfer interrupted or slow
Use compression (-z) and consider resumable transfers with rsync instead of SCP.
File not found after transfer
Check the destination path. Use absolute paths and verify file was transferred completely.