WooCommerce is the most popular e-commerce plugin for WordPress, powering millions of online stores. This server comes with WordPress, WooCommerce, payment gateways (Stripe, PayPal) and the Storefront theme fully installed and configured with the domain, admin account and store name you specified during the order. All you need to do is point your domain to the server’s IP address, enable SSL, and your store will be ready for business.
Your server’s IP address and root password are shown on the Server Details page in your client panel. The store is already accessible by IP address – open http://your.server.ip in a browser to verify it works. You should see the default WooCommerce storefront.
The admin panel is available at http://your.server.ip/wp-admin. Log in with the credentials you entered during the order.
If you placed the server behind a VyOS router on a private network, set up port forwarding for ports 22, 80 and 443 so the store is reachable from the internet. WooCommerce is a public-facing store, so it must be reachable from the internet for customers to buy.
Go to your domain registrar’s DNS settings and create A records pointing to your server’s IP address:
| Type | Name | Value |
|---|---|---|
| A | @ | your.server.ip |
| A | www | your.server.ip |
DNS changes usually take a few minutes, but can take up to 24 hours. You can check the status at dnschecker.org.
Once DNS has propagated, your store is live:
http://yourdomain.comhttp://yourdomain.com/wp-adminLog in with the admin credentials you entered during the order.
Important: SSL is required for accepting payments. Stripe and PayPal will not work without HTTPS – they require a secure connection to process transactions.
Connect via SSH and run:
ssh root@your.server.ip
/opt/setup/get-ssl.sh
The script will verify DNS, obtain a Let’s Encrypt certificate and switch your store to HTTPS automatically. Automatic renewal is already configured. After completion, your store is available at https://yourdomain.com.
Go to WooCommerce → Settings → Payments in wp-admin.
Stripe
PayPal
You can enable both Stripe and PayPal at the same time – let customers choose their preferred payment method.
Let’s Encrypt certificates are valid for 90 days. Automatic renewal is configured. You can test it with:
certbot renew --dry-run
Your server comes with Fail2Ban pre-configured to protect both SSH and WordPress from brute-force attacks.
| Rule | Max Attempts | Ban Duration |
|---|---|---|
| SSH | 5 failed logins | 10 minutes |
| WordPress (hard) | 3 failed logins | 1 hour |
| WordPress (soft) | 5 failed logins | 10 minutes |
Useful commands:
# Check banned IPs
fail2ban-client status wordpress-hard
fail2ban-client status sshd
# Unban an IP
fail2ban-client set wordpress-hard unbanip 1.2.3.4
If you accidentally lock yourself out, connect via VNC console in your client panel and unban your IP.
Web stack services are managed via systemd:
# Check service status
systemctl status apache2
systemctl status mysql
# Restart services
systemctl restart apache2
systemctl restart mysql
MySQL credentials are stored in /root/.wp_credentials. WordPress is pre-configured to use them.
| Plugin | Purpose |
|---|---|
| WooCommerce | E-commerce engine |
| WooCommerce Stripe | Accept credit cards, Apple Pay, Google Pay |
| WooCommerce PayPal | PayPal payments |
| WooCommerce Shipping & Tax | Automated shipping rates and tax calculations |
| Jetpack | Security, performance and marketing tools |
| Storefront Theme | Official WooCommerce theme |
| Component | Version |
|---|---|
| Ubuntu | 24.04 LTS |
| Apache | 2.4 |
| MySQL | 8.0 |
| PHP | 8.3 |
| WordPress | Latest |
| WooCommerce | Latest |
| WP-CLI | Latest |
| Certbot | 2.9 |
| Fail2Ban | 1.0 |
| Postfix | 3.8 |
| Problem | Solution |
|---|---|
| Site doesn’t open in browser | Check that your domain’s A record points to the server IP. Use dnschecker.org to verify |
| SSL script fails | DNS probably hasn’t propagated yet. Wait 10-15 minutes and run /opt/setup/get-ssl.sh again |
| Stripe/PayPal not working | Make sure SSL is enabled – payment gateways require HTTPS |
| Forgot WordPress admin password | SSH in and run: wp user update admin --user_pass="newpass" --allow-root --path="/var/www/html" |
| Blocked by Fail2Ban | Use VNC console in your client panel to unban your IP |
| Forgot root password | Use VNC console in your client panel to reset it |