How to start with WinSparrow Linux server via SSH

How to Connect to Your Linux Server via SSH

Everything you need to access, manage, and secure your Linux VPS from any device. From zero to pro in 15 minutes.

🕒 12 min read 📅 August 12, 2026 ✍️ WinSparrow Team

01. What is SSH?

SSH (Secure Shell) is a cryptographic network protocol that allows you to securely access and manage a remote server over the internet. Think of it as opening a terminal window directly on your server in the data center — but from your home or office computer.

Why SSH Matters

FeatureDetails
🔒 Full EncryptionAll data between you and the server (passwords, commands, files) is fully encrypted — no one can eavesdrop
⚡ Speed & EfficiencyMuch faster than any GUI — saves time and server resources
🌍 Access AnywhereConnect from any device, any location in the world
🔑 Strong AuthenticationSupports password and SSH key-based login (most secure method)
📁 Secure File TransferTransfer files to and from the server using SCP or SFTP protocols

How SSH Works

💻
You (Client)
→
📡
Port 22 Request
→
🤝
Encryption Handshake
→
🔐
Authentication
→
✅
Encrypted Tunnel

02. Before You Start: What You Need

After purchasing a Linux VPS from WinSparrow and receiving your activation email, you'll find 3 essential pieces of information — that's all you need to connect:

InformationDescriptionExample
IP AddressYour server's internet address185.203.xxx.xxx
UsernameLogin username (usually root)root
PasswordInitial temporary passwordxK9#mP2$vL7
ℹ️ Important

This password is temporary — the very first thing you should do after logging in is change it. We'll show you how below.

03. Method 1: Connect from Windows Terminal

If you have Windows 10 (version 1809 or later) or Windows 11, SSH is already built in. No downloads needed!

Open Windows Terminal or PowerShell

Press the Windows key on your keyboard, type Terminal or PowerShell, and press Enter.

Type the SSH Connection Command

ssh [email protected]

Replace 185.203.xxx.xxx with your actual server IP from the activation email.

Accept the Server Fingerprint (First Time Only)

The first time you connect, you'll see a message like this:

The authenticity of host '185.203.xxx.xxx' can't be established.
ED25519 key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxx.
Are you sure you want to continue connecting (yes/no/[fingerprint])?

Type yes and press Enter. This is completely normal — the system is asking you to confirm you want to connect to this server. You won't see this message again for this server.

Enter Your Password

[email protected]'s password:
💡 Tip

When typing your password, no characters or asterisks will appear on screen — this is normal Linux security behavior. Just type the full password and press Enter.

You're In! 🎉

If everything is correct, you'll see a welcome screen like this:

Welcome to Ubuntu 22.04.4 LTS (GNU/Linux 5.15.0-91-generic x86_64)

  System information as of Mon Aug 12 13:41:00 UTC 2026

  System load:  0.08
  Usage of /:   8.2% of 97.87GB
  Memory usage: 12%
  Swap usage:   0%

root@winsparrow-vps:~#

The prompt root@winsparrow-vps:~# means you're connected as root and ready to run commands!

04. Method 2: Connect Using PuTTY

PuTTY is the most popular SSH client for Windows with a graphical user interface. If you prefer clicking over typing commands, this is your go-to option.

Step 1: Download & Install PuTTY

  1. Visit the official website: putty.org
  2. Download the MSI installer (64-bit version for most systems)
  3. Install with the standard wizard (Next → Next → Install)

Step 2: Configure the Connection

  1. Open PuTTY
  2. In the Host Name (or IP address) field → enter your server IP
  3. Make sure Port is set to 22
  4. Make sure Connection type is set to SSH
  5. (Optional) In Saved Sessions → type a name like WinSparrow Linux and click Save for quick access later

Step 3: Connect!

  1. Click Open
  2. If a security alert about the server's host key appears → click Accept (normal for first connection)
  3. A black terminal window opens → type root → press Enter → type your password → press Enter
  4. You're in! 🎉

Recommended PuTTY Settings

SettingLocationBenefit
Font sizeWindow → Appearance → FontBetter readability
Save sessionSession → Saved Sessions → SaveDon't re-enter details every time
Keep AliveConnection → Keepalives → 30Prevents connection timeout
LoggingSession → Logging → All outputSaves session to a file

05. Method 3: Connect from macOS or Linux

Both macOS and Linux have SSH built in — nothing to install!

  1. Open Terminal:
    • macOS: Press Cmd + Space → type Terminal → Enter
    • Linux: Press Ctrl + Alt + T
  2. Type the connection command:
ssh [email protected]
  1. Accept the fingerprint (first time only) → type yes
  2. Enter your password
  3. Done! You're connected! 🎉

06. First Steps: Securing Your Server

After your first login, there are a few essential steps you should take immediately to secure your server.

6.1 — Change Your Password Immediately

passwd

You'll be prompted to enter a new password twice for confirmation.

💡 Strong Password Tip

Use at least 16 characters mixing uppercase, lowercase, numbers, and symbols. Example: Xk9#mP2$vL7&qR4!

6.2 — Update the System

apt update && apt upgrade -y

This downloads and installs the latest security patches. May take 2-5 minutes depending on available updates.

6.3 — Create a Non-Root User

Working as root all the time is risky — any wrong command could damage the entire system. Best practice is to create a regular user with sudo privileges:

# Create a new user
adduser ahmed

# Give them sudo (admin) privileges
usermod -aG sudo ahmed

Then log in as the new user:

ssh [email protected]

Use sudo before any command that needs admin privileges:

sudo apt update

6.4 — Reboot (If Kernel Updates Were Installed)

sudo reboot

The server will take about 30 seconds to a minute to come back online. Then reconnect normally.

07. Advanced Security: SSH Key Authentication

SSH keys are the most secure way to log in. Instead of typing a password every time (which can be guessed or brute-forced), you use an encrypted key pair — like having a unique digital key that no one else in the world has.

How SSH Keys Work

KeyLocationPurpose
🔑 Private KeyOn your computer — NEVER share it!Proves your identity
🔓 Public KeyOn the serverRecognizes your private key

Think of them as a lock and key: the Public Key is the lock you install on the server, and the Private Key is the key only you have.

Step 1: Generate Your Key Pair

Run this on your local computer (Windows PowerShell, macOS Terminal, or Linux Terminal):

ssh-keygen -t ed25519 -C "[email protected]"

You'll be asked a few questions:

Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/user/.ssh/id_ed25519): [Press Enter to accept]
Enter passphrase (empty for no passphrase): [Type a passphrase or press Enter]
Enter same passphrase again: [Confirm]
💡 Tip

It's recommended to set a passphrase — this adds an extra layer of security. Even if someone steals your key file, they can't use it without the passphrase.

Step 2: Copy Your Public Key to the Server

Easy Method (macOS / Linux)

ssh-copy-id [email protected]

Manual Method (Windows)

First, display your public key:

cat ~/.ssh/id_ed25519.pub

Copy the entire line that starts with ssh-ed25519. Then log into your server and add it:

# Create the directory if it doesn't exist
mkdir -p ~/.ssh

# Add your public key
echo "ssh-ed25519 AAAA...your-key-here..." >> ~/.ssh/authorized_keys

# Set correct permissions (critical!)
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

Step 3: Test Key-Based Login

ssh [email protected]

If everything is set up correctly, you should connect without being asked for a password! 🎉

Step 4 (Recommended): Disable Password Login

After confirming SSH keys work, disable password authentication to block brute-force attacks:

sudo nano /etc/ssh/sshd_config

Find and change these lines:

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password

Then restart the SSH service:

sudo systemctl restart sshd
⛔ Caution

Before disabling password authentication, make absolutely sure your SSH keys are working. If you disable passwords and keys aren't set up, you'll be locked out! Contact WinSparrow support if that happens.

08. Changing the Default SSH Port

The default SSH port is 22, and every automated scanner knows it. Changing it to a custom port significantly reduces brute-force attempts.

sudo nano /etc/ssh/sshd_config

Change the line:

# Change from:
#Port 22

# Change to:
Port 2222

You can use any port number between 1024 and 65535. Then restart SSH:

sudo systemctl restart sshd

From now on, connect using the -p flag:

ssh -p 2222 [email protected]
💡 PuTTY Users

If you use PuTTY, just change the Port field from 22 to your new port number in the Session settings.

09. Essential Linux Commands

Here are the most important commands you'll use daily to manage your server.

File Navigation & Management

CommandDescriptionExample
lsList directory contentsls -la
cdChange directorycd /var/www
pwdPrint working directorypwd
mkdirCreate a directorymkdir my-project
rmRemove file or directoryrm -rf folder/
cpCopy filescp file.txt /backup/
mvMove or rename filesmv old.txt new.txt
catView file contentscat config.txt
nanoEdit a text filenano /etc/hosts
findSearch for filesfind / -name "*.log"

System Monitoring

CommandDescription
top / htopMonitor processes, CPU & RAM in real time
df -hDisk space usage (human-readable)
free -hMemory usage
uptimeHow long the server has been running
whoamiShow current username
uname -aSystem information
systemctl statusCheck status of a service
journalctl -xeView system logs

Package Management (Ubuntu/Debian)

CommandDescription
apt updateRefresh the list of available packages
apt upgrade -yInstall all available updates
apt install <pkg>Install a new package
apt remove <pkg>Remove a package
apt search <keyword>Search for a package

Networking

CommandDescriptionExample
ip addrShow network configurationip addr show
pingTest connectivityping google.com
curlTest URLs / download datacurl -I https://winsparrow.com
wgetDownload fileswget https://example.com/file.zip
ss -tulnpList open portsss -tulnp

10. Transferring Files To & From Your Server

SCP (Secure Copy) — Command Line

Upload a file to the server

scp file.txt [email protected]:/home/ahmed/

Download a file from the server

scp [email protected]:/var/log/syslog ./

Upload an entire folder

scp -r my-folder/ [email protected]:/home/ahmed/

SFTP — Interactive Mode

sftp [email protected]

sftp> put localfile.txt          # Upload a file
sftp> get remotefile.txt         # Download a file
sftp> ls                         # List remote files
sftp> lcd ~/Desktop              # Change local directory
sftp> exit                       # Disconnect

WinSCP — GUI for Windows (Drag & Drop)

If you prefer a graphical interface for file management:

  1. Download WinSCP from the official website
  2. Open it and select SFTP as the protocol
  3. Enter your IP, username, and password
  4. Click Login
  5. You'll see a split-screen: your computer on the left, server on the right
  6. Drag and drop files between them!

11. Troubleshooting Common Issues

❌ "Connection refused"

ssh: connect to host 185.203.xxx.xxx port 22: Connection refused

Possible causes & solutions:

  • Server hasn't fully started yet → Wait 1-2 minutes and retry
  • SSH service isn't running → Contact WinSparrow support
  • Port was changed → Use the correct port with ssh -p <port>

❌ "Connection timed out"

ssh: connect to host 185.203.xxx.xxx port 22: Connection timed out
  • Wrong IP → Double-check the IP in your activation email
  • Network issue on your end → Test with ping 185.203.xxx.xxx
  • Firewall blocking port 22 → Check with your network admin

❌ "Permission denied (publickey)"

Permission denied (publickey).
  • Server only accepts SSH key login (password disabled)
  • Your public key isn't in ~/.ssh/authorized_keys on the server
  • Permissions are wrong → .ssh must be 700, authorized_keys must be 600

❌ "REMOTE HOST IDENTIFICATION HAS CHANGED!"

This appears when the server was re-imaged or its host key changed. If you intentionally reinstalled:

ssh-keygen -R 185.203.xxx.xxx

Then reconnect normally.

❌ Connection Drops After Being Idle

Create or edit the SSH config file on your local machine:

nano ~/.ssh/config

Add this configuration:

Host winsparrow
    HostName 185.203.xxx.xxx
    User root
    Port 22
    ServerAliveInterval 60
    ServerAliveCountMax 3

Now connect with just: ssh winsparrow

12. Pro Tips for Daily Use

1. Use an SSH Config File

Instead of remembering IPs and ports, create a ~/.ssh/config file:

Host myserver
    HostName 185.203.xxx.xxx
    User ahmed
    Port 2222
    IdentityFile ~/.ssh/id_ed25519

Then connect with a single word: ssh myserver

2. Use tmux for Persistent Sessions

If you're running long tasks and worried about losing progress if your connection drops:

# Install tmux
sudo apt install tmux -y

# Start a new named session
tmux new -s mysession

# If disconnected, reattach to your session
tmux attach -t mysession

Even if your internet drops, the session keeps running on the server!

3. Enable UFW Firewall

# Allow SSH through the firewall
sudo ufw allow 22/tcp

# Enable the firewall
sudo ufw enable

# Check active rules
sudo ufw status

4. Install fail2ban (Auto-Block Attackers)

sudo apt install fail2ban -y
sudo systemctl enable fail2ban
sudo systemctl start fail2ban

fail2ban automatically bans any IP that fails to log in after a set number of attempts — essential protection against brute-force attacks.

✨ Quick Summary: Zero to Pro

StepActionTime
1️⃣Receive server credentials from WinSparrow email—
2️⃣Open Terminal, type ssh root@IP30 sec
3️⃣Accept fingerprint, enter password30 sec
4️⃣Change password with passwd1 min
5️⃣Update system: apt update && apt upgrade -y2-5 min
6️⃣Create a non-root user1 min
7️⃣Set up SSH key authentication5 min
8️⃣Install fail2ban & enable UFW firewall3 min
🏁Secure, production-ready server~15 min

Ready to Get Started?

Get your Linux VPS from WinSparrow and connect in under 60 seconds.

🔵 Prime Plans

1Gbps stable bandwidth from the smallest plan. Perfect for speed-critical workloads.

🟠 Legacy Plans

All ports open + full flexibility. Ideal for email, cybersecurity & advanced use cases.

Deploy Your Server Now →

💬 Need Help?

Our support team is always ready to assist you — response time is usually under 5 minutes.

🎫

Support Ticket

From your dashboard — fastest method

💬

WhatsApp / Telegram

Quick responses, typically < 5 min

📞

Phone

+20 15 55651661

Published in Help Center