Wstęp
W dzisiejszym poradniku skonfigurujemy darmowy serwer VPS na platformie Oracle Cloud i zainstalujemy na nim system CMS WordPress, aby stworzyć stronę WWW bez żadnych opłat, na zawsze.
Założenie bezpłatnego konta w Oracle Cloud
W celu rejestracji nowego konta w Oracle Cloud przechodzimy do strony https://www.oracle.com/pl/cloud/free/ i klikamy przycisk Zacznij bezpłatnie:
Do ukończenia procesu rejestracji potrzebny będzie numer telefonu i karta debetowa/kredytowa.
Utworzenie instancji VPS i konfiguracja sieci
Aby utworzyć serwer VPS przechodzimy do zakładki Compute -> Instances:
Klikamy przycisk Create instance:
Zmieniamy nazwę instancji, następnie edytujemy sekcję Image and shape aby wybrać dystrybucję Linuxa i zasoby sprzętowe:
Wybieramy system Ubuntu 20.04 i maksymalne zasoby dla darmowego konta – 4 rdzenie Arm Ampre i 24 GB RAM:
W sekcji network zostawiamy ustawienia domyślne, poniżej klikamy przyciski aby zapisać klucze za pomocą których zalogujemy się do tworzonej teraz maszyny wirtualnej:
Klikamy przycisk Create – pojawi się podsumowanie i informacja o procesie uruchamiania instacncji:
UWAGA:
Przy tworzeniu instancji maszyny wirtualnej o takich zasobach, może pojawić się powiadomienie o braku dostępnych zasobach przez co nie będziemy mogli uruchomić VPSa. W takiej sytuacji spróbuj zmienić Availability domain w sekcji Placement. Jeżeli to nie pomoże, możesz utworzyć maszynę z jednym procesorem AMD i 1 GB RAM lub spróbować później.
Po uruchomieniu maszyny pokaże się publiczny adres IP i nazwa użytkownika potrzebna do zalogowania się na serwer.
Powiększenie dysku
Domyślnie do nowo utworzonej instancji przypisywany jest dysk 50GB. Możemy rozszerzyć jego wielkość do 200GB postępując w następujący sposób: przechodzimy do strony Storage -> Boot Volumes i klikamy Edit na voluminie przypisanym do naszej instancji:
Zmieniamy Volume Size i klikamy Save Changes:
Po ponownym uruchomieniu instancji pojemność dysku zostanie zaktualizowana w systemie.
Otworzenie portów (pomijamy w przypadku wykorzystania Cloudflare Tunnel)
Teraz zmienimy konfigurację sieci. Do ustawień sieci przechodzimy klikając nazwę Virtual cloud network:
Następnie klikamy nazwę Security list:
Klikamy Add Ingress Rules, dodajemy następującą regułę aby umożliwić ruch sieciowy dla protokołów HTTP, HTTPS oraz serwera WWW:
Teraz gdy mamy utworzoną instancję maszyny wirtualnej i skonfigurowaną sieć, możemy połączyć się z serwerem.
Połączenie z serwerem przez SSH
Do połączenia się z serwerem przez SSH wykorzystamy darmowe narzędzie PuTTY. Jeżeli jeszcze tego nie zrobiłeś pobierz PuTTY ze strony https://www.putty.org/ i zainstaluj aplikację.
PuTTY składa się z kilku komponentów, teraz użyjemy puttygen.exe aby skonwertować prywatny klucz ssh w formacie rozpoznawalnym przez PuTTY:
Klikamy Conversion -> Import key i wskazujemy pobrany wcześniej prywatny klucz ssh:
Klikamy Save private key, nadajemy nazwę i zapisujemy plik:
Uruchamiamy PuTTY, w kategorii Session, pole Host Name wpisujemy nazwa_użytkownika@adres_IP_serwera w tym przypadku będzie to [email protected] – dane logowania do Twojego serwera znajdziesz w panelu Oracle Cloud Compute -> Instances.
Przechodzimy do kategorii Connection -> SSH -> Auth, wskazujemy klusz SSH, który przed chwilą utworzyliśmy:
Wracamy od kategorii Session, wpisujemy nazwę sesji i zapisujemy:
Łączymy się z serwerem klikając przycisk Open:
Instalacja Webinoly
Webinoly to zoptymalizowany do pracy z procesorami ARM serwer WWW NGINX.
Przed instalacją Webinoly zaktualizujemy pakiety systemu:
sudo apt update && sudo apt upgrade -y
Po zaktualizowaniu systemu zmieniamy użytkownika komendą:
sudo -i
Kopiujemy i uruchamiamy skrypt instalujący serwer Webinoly:
wget -qO weby qrok.es/wy && sudo bash weby
Po udanej instalacji pojawi się podsumowanie, zapisz dane logowania do bazy danych:
Otwieramy porty w Ubuntu przez iptables następującymi komendami:
iptables -I INPUT 6 -m state --state NEW -p tcp --dport 80 -j ACCEPT
iptables -I INPUT 6 -m state --state NEW -p tcp --dport 443 -j ACCEPT
iptables -I INPUT 6 -m state --state NEW -p tcp --dport 22222 -j ACCEPT
netfilter-persistent save
Instalacja WordPressa
Tworzymy dwa rekordy DNS wskazujące nazwę Twojej domeny na publiczny adres IP serwera. Jeżeli nie masz zarejestrowanej domeny w Cloudflare, dowiesz się jak uruchomić usługę z tego poradnika: Zabezpiecz domenę za pomocą NGINX Proxy Manager i CloudFlare
Aby uruchomić stronę w WordPressie uruchamiamy następującą komendę w terminalu:
sudo site bluestack.online -wp -cache=on
W tym przypadku używam nazwy domeny bluestack.online, zmień ją na domenę, którą posiadasz.
Dodaj użytkownika i hasło do folderu wp-admin:
sudo httpauth -add
Teraz jesteśmy wstanie przejść do strony wpisując w przeglądarce nazwę domeny i wpisując ustawione przed chwila dane logowania:
Postępujemy z standardową instalacja WordPressa i po chwili mamy dostęp do panelu:
Instalacja certyfikatu SSL
Tworzymy folder dla certyfikatów:
sudo mkdir /etc/nginx/certs/
Następnie tworzymy certyfikaty:
sudo nano /etc/nginx/certs/cert.pem
Przechodzimy do strony https://developers.cloudflare.com/ssl/origin-configuration/authenticated-origin-pull/set-up kopiujemy zaznaczoną sekcję i wklejamy do nano:
Zapisujemy i zamykamy plik przez Ctrl+ X -> Y -> Enter
Przechodzimy do panelu Cloudflare, wybieramy naszą domenę i klikamy SSL/TLS -> Origin Server -> Create Certificate:
I jeszcze raz Create:
Tworzymy plik z certyfikatem:
sudo nano /etc/nginx/certs/cert.crt
Kopiujemy i wklejamy Origin Certificate:
Zapisujemy i zamykamy plik przez Ctrl+ X -> Y -> Enter
Tworzymy plik z kluczem:
sudo nano /etc/nginx/certs/cert.key
Kopiujemy i wklejamy Private Key:
Włączamy certyfikat następującą komendą, zmieniając nazwę strony na nazwę Twojej domeny:
sudo site bluestack.online -ssl=on -ssl-key=/etc/nginx/certs/cert.key -ssl-crt=/etc/nginx/certs/cert.crt -ssl-ocsp=/etc/nginx/certs/cert.pem
Przechodzimy do wpisów DNS i włączamy Proxy:
Możemy teraz przejść do strony zabezpieczonej szyfrowanym połączeniem:
Optymalizacja
Wejdź w ustawienia -> Ogólne i zmień przedrostek strony na https://
Zmień ustawienia linków: Ustawienia -> Bezpośrednie odnośniki -> Nazwa wpisu:
Włącz wtyczki Nginx Helper i Redis Object Cache: