Jump to content

robertzo

Members
  • Posts

    103
  • Joined

  • Last visited

  • Days Won

    3

robertzo last won the day on August 16

robertzo had the most liked content!

Contact Methods

  • Website URL
    https://robertzou.com

Profile Information

  • Gender
    Male
  • Interests
    I love websites and building them.

Recent Profile Visitors

392 profile views

robertzo's Achievements

Apprentice

Apprentice (3/14)

  • Dedicated Rare
  • First Post Rare
  • Collaborator Rare
  • Conversation Starter Rare
  • Week One Done Rare

Recent Badges

8

Reputation

  1. Yeah that is another one that I forgot to add. Make sure to restart the ssh daemon with: And use this command to login
  2. 1. Use SSH Key Authentication: For Openssh (Mac, Linux, Windows): Run this command to generate an SSH key using the strongest key size (leave everything on default. You can enter a Passphrase, which is the password you would need to enter to connect to the server). ssh-keygen -t ed25519 Then run this command to upload it to your SSH server. ssh-copy-id -i /root/.ssh/id_ed25519.pub root@youripaddress Make sure to replace youripaddress with your IP address. Bonus: If you want to log into the server from another computer but don't want to generate another key (and do all those steps), just copy the private key from your main computer to your other computer and run this command to login: cd Folder ssh -i .\ssh.key root@youripaddress Make sure to replace Folder with the folder your uploaded the SSH Private Key, ssh.key with the private key name, and youripaddress with your IP address. For puTTY and Filezilla (Windows): Go to puTTY Keygen and generate an SSH key. Make sure to select ED25519 as it is the strongest key size. You can also enter a passphrase (a password you need to enter every time you need to log into the SSH server) if you want. Then open up FileZilla and connect to your server (Host is youripaddress, port is 22, username is root, and password is your password). Upload the Public Key to the /root/.ssh folder. Then if you want to connect to your server using SSH keys, just go to SSH < Auth and upload your private key and everything is set. 2. Disable Password Authentication: The reason why you went through all that trouble of setting up SSH keys is so that people cannot access your server with JUST a password (they would need that strong SSH key and maybe even another password if you created a passphrase). To do that run these commands on the REMOTE SERVER: nano /etc/ssh/sshd_config You can vim if you want. Then uncomment the PasswordAuthentication line (remove the pound/number symbol) and change the yes to no. Uncomment the PermitEmptyPasswords line and change it to no (if it is yes). And also change the yes in the UsePAM line to no. Then restart the SSH daemon with this command: systemctl restart sshd 3. Disable Root User Login (Use Your Own User): The default username is root and every hacker knows this. You want to create a new user and disallow root user login. First create a new user by running this command: sudo adduser yourusername Make sure to replace yourusername with a compicanted easy to remember name (Maybe like your friends middle name). Follow the instructions in the terminal. Then exit the SSH session and test if everything works by running this logging into the server but using the username@youripaddress. Then login to your server and run this command: nano /etc/ssh/sshd_config Then change PermitRootLogin to no. 4. Change SSH Port: @balloons Posted below how to do this. 4. Check How Secure You SSH Login is Go to https://ssh-audit.com and enter you IP address and port and they wil tell you how secure your server is and tips to improve the score.
  3. Oh because when I used it it says server exhausted so httrack is the only option for me.
  4. Also if you think Hugo is a little complicated, you can use Forestry.io (free for up to 3 sites) to create content and sync it automatically to Hugo (forestry.io is a headless CMS).
  5. Maybe you can Try Grav. I have heard a lot of good things about them.
  6. Remember the Wp2Static plugin. I found out that it uses a lot of resources. Here is a tutorial that I have tested and made sure it works (I am posting a link to a comment I made on a fairly old topic. I noticed that because it is so old, nobody saw it): https://www.helionet.org/index/topic/43689-solved-suspended-google12/?do=findComment&comment=192921
  7. Follow this tutorial: However Heliohost is moving to Plesk so you may not be able to do this until later.
  8. Oh okay, however this usualy isn't a problem for me since I normally use Ubuntu
  9. Note: If you plan on providing free or paid hosting, don't use this method. Even though it offers an extension ACL (access control list) where you can disable features like databases, and allows you to create packages. You can't really limit disk space per ACCOUNT, only per WEBSITE (hence the packages). The only thing you can limit is FEATURES and # or websites. 2 great alternatives are Virtualmin and CentOS Web Panel (Virtualmin is easier to use, but CWP offers the closest you can get to cPanel in terms of features for free). Another problem is that you can't disable SSH access which could be a security problem. I have seen in the forums that a lot of people are interested in getting a VPS. VPS is AWESOME, it is inexpensive, high performing, and has no limits (I mean if you host a ton of high traffic websites on 1 small server, it does slow down, however there are no hard limits) besides storage. The problem however (there has to be a catch or else why are there so many people using shared servers) is that it is a bit hard to manage especially for beginners. Everything (or almost everything) is done via command line. If you want to install MySQL/MariaDB, you will need to run a command. If you want to install Apache or Nginx, you will need to do it via command line. Anything else would require editing configuration files and etc. Well now that won't be a problem, thanks to this wonderful opensource control panel CYBERPANEL. Overview Now you may be wondering. Why Cyberpanel????? I love Cyberpanel because it not only offers one of the best GUI (Hestia and Vestcp can be a little confusing) but it has amazing speed and performance. The reason for that is because it uses Openlitespeed. Litespeed Webserver is fairly new being released first in 2003 similar to Nginx (Apache was 1995 and Nginx was 2004). It used to be paid, however with the new addition Openlitespeed (in 2013) normal people can use it for free. Thing that sets it apart is that you still get the speed and performance of Nginx, but with feature only available to Apache (like .htaccess). Another advantage is that it offers HTTP/3 with Quic which speed up your site and optimizes images. Last thing is if you use: WordPress, Joomla, Drupal, Prestashop, Magento (etc.), you can use their famous LSCache Plugin to get SERVER SIDE (not the slow client side) cache for 100% free (they don't have paid plans to upsell you). The only problem is that the free version (OLS) does require a webserver restart after editing .htaccess. If you want an enterprise solution, you can upgrade to enterprise for free (up to 1 domain and 2GB of memory) or pay a monthly fee, here are the advantages:https://www.litespeedtech.com/products/litespeed-web-server/editions. The GUI or Cyberpanel looks like this: Here you can manage things like websites, databases, SSH access, security tools, PHP, FTP, SSL, Backups etc. I will go through it later. Minimum Requirements: A VPS/Dedicated Server running either: Ubuntu 18.04 Ubuntu 20.04 (recommended) Centos 7.x Centos 8.x Python 3+. It should already be installed automatically in Ubuntu. Run this command to check: python -V 10GB Disk Space (I know it seems like a lot, however they use the latest technology so your website would still run really fast) Installation To install Cyberpanel, you would first need to SSH/login into your server. You can do this by following the tutorial Heliohost made or by running ssh root@yourdomain/youripaddress in your command line/terminal. Then run this command to start the installation script: sh <(curl https://cyberpanel.net/install.sh || wget -O - https://cyberpanel.net/install.sh) Then it will as you some questions: Select 1. Openlitespeed. Only choose Litespeed Enterprise if you already have your license key ready to paste into the command line. You can always change it later. When it asks to install the Full service enter Y for yes. You can always install it later, but it is easier to install it now. Only select n if you are POSITIVE, that you don't need a DNS server, a Mail server, or an FTPd server. It will then ask if you want ONLY (key word only) Remote MYSQL. Select n unless you REALLY NEED remote MySQL. You can't change this later. Then click on enter to install the latest version of Cyberpanel I recommend doing either the default 123456 or random password. You can always change the password later in Users < Modify user It will ask you to install Memcached extension and then ask you to install Redis extension. They offer object cache so your database can run faster. You can either choose one of them (Redis is newer and offers more features than Memcache) or both and choose either one for every website Now it will ask if you want to install Watchdog. Watchdog is great for small websites and beginners since it automatically fixes issues with servers. Like run scripts to fix errors or restart the server if CPU is overloaded. However it is still in beta, so it isn't the best thing to install for production sites. You can kill the watchdog process by running watchdog kill in the terminal after. When the installation is finished, make sure to copy the contents starting from the line of #s to a notepad (it contains login details). If you did manage to forget the password (the default username is admin) just run this command (making sure to replace yournewpassword with your new password): adminPass yournewpassword You can then log into your control panel at: youripaddress:8090 or yourdomain.com:8090 (if you pointed your domain to your IP address). Creating a Website AKA cPanel Account: The reason why I said AKA cPanel account is because a website is similar to a cPanel account. Normally most people think of a website as a domain. However in Cyberpanel, they think of a website as a website container. There you can add domains and subdomains. Like I said in the beginning, you can only limit storage/diskspace for websites, so you can try to make it work by limiting only 1 website per user. The only problem I saw so far is that you can only upload one custom SSL per website container (though you can get unlimited free Let's Encrypt SSL that renews automatically) and the fact that a subdomain is also going to be in a subdirectory (like docs.yourdomain.com and yourdomain.com/docs). First go to Packages and modify the default package (you can also create a new one if you want) to your liking. Then go to Websites < Create Website and enter in your details. I recommend checking every box. If you didn't check open_basedir, you can always do so in the manage website section. If you didn't check DKIM support you can always generate them in Mail < DKIM manager. If you didn't check SSL, you can either upload a custom SSL to the manage website section or click on SSL < Manage SSL. If you didn't check Mail Domain don't worry, I don't really think it does really anything much. When you are done, go to Websites < List Website and click on Manage on your website. Here is what it should look like: Here you can manage website files, git, redirects, SSL, one click installs, SSH access, stress test etc. You can open up file manager and upload your website files or install WordPress with one click. Now Cyberpanel not only offers website management, but also an email server. To set it up, you would need to have the proper spf and dkim records configured on your domain. I recommend using either Cyberpanel DNS or Cloudflare (I will show you how to do it manually with another DNS provider later). To set up Cyberpanel DNS, go to DNS < Create Nameservers, follow the instructions. Then go to your domain registrar and go to setup glue records (if you need help, specify your registrar and I can help you) entering those nameservers. Then point your domain to those nameservers. To setup Cloudflare DNS with Cyberpanel go to DNS < Cloudflare, enter in your Global API token (can be found in Profile API Tokens) and email and enable sync local records to Cloudflare. Then generate your dkim records (you can skip this step if you already tick marked DKIM support when creating a website) by going to Email < DKIM Manager. If you are using a 3rd party DNS (other than Cyberpanel DNS or Cloudflare) then you will need to copy the records in this chart from your Cyberpanel DNS to your 3rd party DNS: After everything is configured, you can start creating an email which should be straightforward. When you finish, you can either access the Rainloop webmail or connect to a 3rd party like Gmail: Read and send email through Gmail. There are so many other features and security features offered by Cyberpanel that I can't fit into this article, go here to find out more: https://cyberpanel.net/
  10. Github Pages, Netlify, and Cloudflare pages are pretty fast. The only downside, is that you can only host static sites and not dynamic sites (like PHP sites).
  11. This plugin (now that I found out) actually uses a lot of resources. I am experimenting but I found out another OFFLINE WAY (so no resource overload) to convert to static. The only problem is that you would have to manually upload the files and rewrite to your server every time you make an edit. Go to: https://www.httrack.com/page/2/en/index.html and download their app on to your computer. Then create a new project and add your website URL (make sure to add https if you redirect to https from http or else it won't work). Then click on browse mirror log nd see if your website turned out fine. Then just go to C:\My Website\yourdomain.com and upload all your website files to your File Manager. My Wordpress Site: https://robertzou.com My Static Site: robertzo.github.io
  12. I tried to compose it myself, however I am surprised at how big the size is (85MB). BTW, I wouldn't find your GitHub site (krydos.github.io). Does anyone else know why it is that big or is it just me
  13. Note: This tutorial is made for using Plesk, since we are moving to Plesk. For Static Sites So first, you will need to go to Website & Domains (of your Plesk dashboard) and click on Add Domain. Enter your Domain name and leave the rest on default (you can change them if you know what you are doing). Then go to your old host and download all your website files. Go to your Plesk dashboard, click on Files (from the sidebar) and navigate to the folder that is called yourdomain.com. Delete the index.html and upload all of your files there. Now open up Notepad as admin and open this file: C:\Windows\System32\drives\etc\hosts. Add this line of code to the bottom: Your ip address yourdomain.com You can find your IP address in Website and Domains and under the dropdown box of your domain. Make sure to also replace yourdomain.com with your domain. Check if your website is functioning properly For Non-WordPress Dynamic: Go to the Website & Domains section (of your Plesk dashboard) and click on Add Domain. Enter your Domain name and leave the rest on default (you can change them if you know what you are doing). Then go to your old host and download all your website files, then go to phpmyadmin and export your database info. Go to your Plesk dashboard, click on Files (from the sidebar) and navigate to the folder that is called yourdomain.com. Delete the index.html and upload all of your files there. Go to Databases and create a new database and database user. Click on phpmyadmin < import and upload the database your just exported. Now open up Notepad as admin and open this file: C:\Windows\System32\drives\etc\hosts. Add this line of code to the bottom: Your ip address yourdomain.com You can find your IP address in Website and Domains and under the dropdown box of your domain. Make sure to also replace yourdomain.com with your domain. Check if your website is functioning properly Go to the Website & Domains section (of your Plesk dashboard) and click on Add Domain. Enter your Domain name and leave the rest on default (you can change them if you know what you are doing). Then go to your old host and install the Duplicator Plugin (the reason I chose Duplicator and not All in one Migration is because they have no import limit unlike all in one. However if your WordPress site is less than 512 MB, All in one Migration is better since you can use Plesk's WordPress Toolkit). Click on create an archive and follow the instructions. Go to your Plesk dashboard, click on Files (from the sidebar) and navigate to the folder that is called yourdomain.com. Delete the index.html file and upload the zip archive and installer.php. Open up Notepad as admin and open this file: C:\Windows\System32\drives\etc\hosts. Add this line of code to the bottom: Your ip address yourdomain.com You can find your IP address in Website and Domains and under the dropdown box of your domain. Make sure to also replace yourdomain.com with your domain. Go to yourdomain.com/installer.php and run the installer script. When you are finished log into the admin to automatically delete the duplicator installation files. Check if your website is functioning properly When you are finished with everything, just go to your DNS settings and either point your domain to the IP address or Heliohost's nameservers. Then delete that line you added in notepad (or comment it if you are going to use it later).
  14. BTW if you are hosting a static site on Heliohost, you can host your site on GitHub pages temporary.
  15. What is it that you want that has to be dynamic and not static. Ecommerce? User Accounts? Comments?
×
×
  • Create New...