Most people start out with shared hosting. Every shared hosting plan has a control panel with it. The most popular and widely-used shared hosting control panels are cPanel and DirectAdmin. They have great user interfaces and they are easy to work with. Perfect for beginners. Sooner or later, everyone outgrows their shared hosting account and they move to something more powerful, either a VPS (virtual private server) or a dedicated server. When they do the switch, they don’t know what to expect and what do to. In this article, we are going to write about our experience with thousands of customers and everything you need to know about the switch from shared hosting to a VPS.
As your websites grow, so do your hosting needs. If you are wondering why you should switch to a VPS, there are several reasons:
- You don’t share a VPS with other random people. Although every hosting provider does their best to keep their servers as optimized and as clean as possible, you never know what the other accounts hosted on the same shared hosting do with their websites. When you switch to a VPS, you get your own private resources, dedicated to you.
- You get full control over your server. At least with our VPSes. Although a good part of other managed hosting providers won’t give you full root access to your VPS. All of our VPS hosting plans come with full root access and our EPIC 24/7 Managed Support is available to help you anytime. When you get full control over your server, you can configure how it actually works and you won’t have any limitations to certain functions or resources. On a VPS with full root access, you get unlimited MySQL databases, unlimited domains, unlimited FTP accounts and more. Of course, the term “unlimited” stretches as far as your server resources. You won’t be able to host unlimited databases or domains if your server is running out of disk space, right?
- With a VPS your website can have more visitors. In general, virtual servers handle a lot more traffic than a shared host. When you share a server with more people and all of them get traffic to their websites – you use up most of your shared server’s resources. If you get a traffic spike you can slow up your server and increase the loading time. A VPS can handle a lot more traffic at once compared to a normal shared hosting account. So if you notice that your website is growing and you are getting more and more visitors each day, it’s time to migrate to a VPS.
- Your website is faster on a VPS. You don’t share your server’s resources with other people, so that means that you will get much better performances. Your website will be noticeably faster if you host it on a VPS or a Dedicated server. And we really do mean noticeably. Usually, the website loading time is improved by at least 300% if they are hosted on a properly configured VPS.
- Virtual servers are more secure if configured properly. If you properly configure and protect your VPS, it will be far more secure than a shared hosting account. Your virtual private server is private to you and only you. With a VPS there are fewer chances of someone else accessing your data or resources unless you specifically grant them access, or, of course, if you don’t properly configure your VPS. If you don’t have the necessary experience that will allow you to configure and administer a Linux VPS, we wouldn’t recommend doing that on your own. A simple misconfiguration in your web server configuration files or database configuration can cause your website/app to become unresponsive. Some of our customers dive into their server configs but they know that we have their back and can contact us anytime so we can help them or fix the problem, if any. Our customers get our top-notch managed hand-holding support which in our opinion is one of the most important features of a well-established web hosting company.
When you should transfer to a VPS
There are no strict rules or guidelines on when to do it, but there are several indicators that can show you need to upgrade to a VPS:
- You start getting a lot of traffic. The main reason why most people switch from shared hosting to VPS is that they get an influx of traffic. Shared hosting accounts may handle low to medium traffic spikes. Also, the resources are shared with other websites, so it can seriously slow down your website. A VPS will give you better and faster performances for your websites/apps.
- You want to install an application that your shared account doesn’t allow you to. Most shared hosting accounts are limited to certain applications and services. If you use a VPS, you can install any application you want to, of course, as long as it meets the hosting provider’s policies. On shared hosting accounts, you are stuck with a PHP version chosen by your hosting provider. If you get a VPS, you can use whatever PHP version you want to, including PHP 7. You can install any PHP modules you need on your VPS. There are quite a lot of applications that you can’t install on a shared hosting because you don’t have the required modules available.
- When you need more resources for e-mails, FTP accounts, databases etc. Shared hosting accounts are usually limited by the number of e-mail addresses and mailing options they can use. The same goes for FTP accounts, databases and any other resource.
- When you wanna have more fun! Testing out different configurations, tweaking different settings, learning new commands…everything is fun to do on a VPS, at least for us.
The switch can be pretty seamless if done right. There are a few things you need to do on your server after you move from your shared account. Some of the most common practices include:
- Connect to SSH. Before you can do anything, you must first log in to your server. You can connect to your Linux VPS by using SSH. If you are a beginner and you want to test a few commands out, you can check our Basic Shell Commands article or these 10 Linux commands for beginners.
- Change your root password. The first and most important thing you should do on your server – change your default root password. Change it to a strong password. It is recommended that you use a different password for each service you are using. Don’t use the same password for your root account that you use for your e-mail.
- Update the time zone. Update your server’s time zone to the one you are in. Most probably, the default time zone won’t collate with your own, so you need to update it. You can synchronize it with an external server too. Check our tutorial to find out how to do it.
- Set up system locale if you want to use your VPS in a different language than English.
- Create a sudo user. You need to create a new sudo user with root access, and then disable root access to the ‘root’ username. The reason why you should do this is to avoid attempted brute force attacks on your server when they use the default ‘root’ username. You should create a new user with a custom username and grant root access to the new user.
- Secure SSH. There are a lot of steps you need to take to secure your SSH. Some of which are changing the default SSH port, disable SSH login for the ‘root’ user, setup passwordless login, setup two-step authentication…
- Set up automatic updates. You should always keep your server and applications up to date. It’s the right thing to do if you want to keep your data safe and secure, with all the new features. Enabling automatic updates on a Linux server is a pretty easy task, we even have a tutorial to help guide you through the process.
- Install a firewall. – No server is secure without a firewall! We recommend that you install and configure Config Server Firewall on your VPS in order to make it more secure and block and unwanted attacks on your server. You can also use IPTABLES to block abusive IP addresses
- Stop brute-force attacks with Fail2Ban. It automatically blocks IP addresses that attempt to harm your server with brute force attacks. It also blocks out an IP if it attempts to login and fails several times. There are a lot of other tweaks and settings you can do with Fail2Ban.
- Set up automatic backups. Always back up your data. It’s the most important thing you need to do. Either do it manually or set up automatic backups. All of our VPS hosting plans have full weekly backups included for free, so if you get a VPS from us, you won’t have to do anything.
- Monitor your server’s uptime. You can use our free server monitoring service or you can use a monitoring app like Icinga, Monitorix, Cacti, Nagios etc. You can use different commands to monitor your servers too. It’s important to know when your server’s down or when you need to change something.
- Automate repetitive system tasks. Some system tasks are repetitive and you may need to do them on a recurring basis. You can automate those using cron. This is optional and if you are a beginner, you may not configure them properly. Follow our tutorial carefully.
[ecko_alert color=”green”]We know this is a bit overwhelming. Don’t worry! We are here to help. Get a VPS from us and we’ll help you with everything. We’ll even do all of this server work for you, for free![/ecko_alert]
- Install a hosting control panel. Most VPSes don’t have a control panel, and you can only manage your server through the command-line. Fortunately, you can install a control panel on your VPS too! You can manage your entire server using a hosting control panel. This includes creating and managing services and applications, working with FTP, e-mail and database accounts etc. You can even install the same control panel that you have previously used, that way you’ll seamlessly transfer the data from shared hosting account over to a VPS. Most commercial control panels are pretty pricey if you purchase an independent, single license, including cPanel. You can get a cPanel VPS for a lot less if you get it directly from a hosting provider. With our VPS hosting plans we currently offer DirectAdmin and WHM/cPanel. If you want to use a free and open source control panel like Webmin, Vesta, Ajenti, Sentora, Kloxo, Virtualmin or any other open source control panel, we can install and configure it for you, for free!
- If you don’t want to use a control panel, then you should install a LEMP, LAMP, MEAN or any other stack required by your applications. You will need to install an FTP server and create accounts. Another thing that you should do if you don’t use a control panel is setup a mail server. We have a bunch of tutorials on this topic, you can search our blog and find more resources. This is a difficult task for beginners and they usually misconfigure something, then they expose their personal data to abusers. We don’t recommend setting up your mail server if you don’t know what you are doing. Contact us and we will install and properly configure your mail server.
- Try different applications. There are A LOT of self-hosted apps that you can try out. After all, you have a VPS and you are not limited to certain applications.
- Contact us! We’ll help you setup your server and we’ll do all the server work for you. We even offer free website migrations, so we will migrate your website from your shared hosting account from another hosting provider to us, free of charge! If you are not sure about which plan to choose or if you need any advice for your VPS, feel free to contact us. We are available 24/7 via Live Chat or via ticket. We’ll make your switch from Shared to VPS as seamless and as easy as possible.