AWS / 4 MIN READ
How to SSH into your AWS WP site
How to create a WP site with AWS
From the original Fervor library. Examples may use older package versions.
Awesome! 🎉 Your EC2 instance is alive—now let’s crack it open and take a look under the hood like it’s a mini server garage. 🧰
Since AWS EC2 doesn’t come with cPanel (unless you buy an image that includes it $$$), we’ll use SSH to access your server and explore the WordPress files. Think of SSH like remote-controlling your server’s terminal.
🔓 Step 1: Connect to Your EC2 Instance via SSH
🧾 What You Need:
- Your .pem key file (you downloaded this during setup)
- Your EC2 Public IPv4 address
🖥️ From Your Terminal (Mac/Linux) or Git Bash (Windows):
ssh -i /path/to/your-key.pem bitnami@your-ec2-public-ip
Example:
ssh -i ~/Downloads/my-key.pem bitnami@54.123.45.67
✅ If it says “Are you sure you want to continue connecting?” — type yes.
📁 Step 2: Navigate the WordPress Files (Bitnami Stack)
Once inside, here’s where things live:
| Folder | What’s Inside |
|---|---|
/opt/bitnami/apps/wordpress/htdocs |
👉 All your WordPress files (like wp-config.php, wp-content, etc.) |
/opt/bitnami/ |
The full Bitnami stack (Apache, PHP, etc.) |
/opt/bitnami/apache2/logs/ |
Apache logs (if you need to troubleshoot) |
⌨️ Example Commands:
cd /opt/bitnami/apps/wordpress/htdocs
ls -la
Boom! You’ll see classic WordPress files like:
wp-config.phpwp-content/wp-admin/wp-includes/
📥 Bonus: Want a GUI Like cPanel?
If you’re missing the comfy feel of cPanel, you’ve got two solid options:
🔸 Option A: Install Webmin (Free browser-based control panel)
It’s not cPanel, but pretty darn close for basic stuff:
- Manage files
- Create backups
- Monitor system usage
I can guide you through setting that up if you’re interested.
🔸 Option B: Use SFTP (GUI File Access)
- Download FileZilla or Cyberduck
- Connect using:
- Protocol: SFTP
- Host:
your-ec2-public-ip - Username:
bitnami - Key file: your
.pemfile (FileZilla calls it “Keyfile”)
Now you’ll see your server files in a nice GUI window!
🔸 PART 1: Set Up SFTP with FileZilla (GUI File Access)
🧰 What You’ll Need:
- Your
.pemfile (private key) - Your EC2 Public IPv4
- FileZilla (Download from filezilla-project.org)
🪜 Step-by-Step (Using FileZilla):
-
Open FileZilla
-
Go to Edit → Settings → SFTP
- Click Add key file
- Browse to your
.pemfile - FileZilla may convert it to a
.ppk(no worries, accept it)
-
Now go to the main FileZilla window and fill in the top bar:
- Host:
sftp://<your-public-ip>(e.g.,sftp://54.123.45.67) - Username:
bitnami - Port:
22 - Leave password blank (your key is doing the work)
- Click Quickconnect
- Host:
-
✅ You’re in!
- Go to:
/opt/bitnami/apps/wordpress/htdocsto edit WP files - Drag/drop files like a local file manager
- Go to:
🔸 PART 2: Install Webmin (Browser-Based Server Panel)
Webmin gives you GUI control over users, storage, Apache, and more. It’s kinda like diet cPanel.
🧱 Step-by-Step:
-
SSH into your EC2 instance:
ssh -i /path/to/your-key.pem bitnami@your-ec2-ip -
Install required packages:
sudo apt update sudo apt install wget curl -y -
Download and install Webmin:
wget http://prdownloads.sourceforge.net/webadmin/webmin_2.103_all.deb sudo dpkg -i webmin_2.103_all.deb sudo apt --fix-broken install -y -
Start Webmin (usually starts automatically):
sudo systemctl start webmin -
Access Webmin in your browser: Go to:
https://your-ec2-public-ip:10000 -
⚠️ You’ll likely get a browser warning (“not secure”):
- It’s fine! Click Advanced → Proceed (it’s using a self-signed cert)
-
Login with your server username:
- Username:
bitnami - Password: You may need to set one:
(Then create a password)sudo passwd bitnami
- Username:
🛡️ Security Tip: Open Port 10000 in Your Security Group
Webmin runs on port 10000, which is probably closed by default.
- Go to your EC2 Security Groups
- Edit the inbound rules
- Add:
- Type: Custom TCP
- Port Range:
10000 - Source:
My IP(for security)
🧠 TL;DR
| Tool | Use It For | Access Method |
|---|---|---|
| FileZilla | File access/editing WP files | GUI (drag/drop) |
| Webmin | Server management dashboard | https://your-ip:10000 |