Dugo sam želio "dotaknuti ruke" internetskih usluga postavljanjem web poslužitelja od nule i puštanjem ga na Internet. U ovom članku želim podijeliti svoje iskustvo u pretvaranju kućnog usmjerivača iz visoko funkcionalnog uređaja u gotovo punopravni poslužitelj.
Sve je počelo s činjenicom da usmjerivač TP-Link TL-WR1043ND, koji je vjerno služio, više nije zadovoljavao potrebe kućne mreže; želio sam pojas od 5 GHz i brz pristup datotekama na uređaju za pohranu spojenom na usmjerivač . Nakon pregledavanja specijaliziranih foruma (4pda, ixbt), stranica s recenzijama i pregledavanja asortimana domaćih trgovina, odlučio sam kupiti Keenetic Ultra.
Dobre recenzije vlasnika radile su u korist ovog uređaja:
nema problema s pregrijavanjem (ovdje smo morali napustiti Asus proizvode);
radna pouzdanost (ovdje sam prekrižio TP-Link);
lako se postavlja (bojao sam se da se ne snalazim i prekrižio Microtik).
Morao sam se pomiriti s nedostacima:
nema WiFi6, htio sam uzeti opremu s rezervom za budućnost;
4 LAN porta, htio sam više, ali ovo više nije kućna kategorija.
Kao rezultat, dobili smo ovaj "poslužitelj":
s lijeve strane je optički terminal Rostelecoma;
desno je naš eksperimentalni router;
2 GB m.128 SSD koji leži uokolo, smješten u USB3 kutiju iz Aliexpressa, povezan je s routerom žicom, sada je uredno postavljen na zid;
u prvom planu je produžni kabel s neovisno odvojenim utičnicama, žica iz njega ide na jeftin UPS;
u pozadini je hrpa kabela s upletenim paricama - u fazi renoviranja stana odmah sam planirao RJ45 utičnice na mjestima gdje je oprema trebala biti smještena, kako ne bih ovisila o zatrpavanju WiFi-ja.
Dakle, imamo opremu, moramo je konfigurirati:
Početno postavljanje usmjerivača traje oko 2 minute, pružatelju navodimo parametre veze (moj optički terminal je prebačen u način rada mosta, PPPoE veza podiže usmjerivač), naziv WiFi mreže i lozinku - u biti to je to , ruter se pokreće i radi.
Postavljamo prosljeđivanje vanjskih priključaka na priključke samog usmjerivača u odjeljku "Mrežna pravila - Prosljeđivanje":
Sada možemo prijeći na "napredni" dio, ono što sam želio od rutera:
funkcionalnost malog NAS-a za kućnu mrežu;
izvođenje funkcija web poslužitelja za nekoliko privatnih stranica;
funkcionalnost osobnog oblaka za pristup osobnim podacima s bilo kojeg mjesta u svijetu.
Prvi se implementira pomoću ugrađenih alata, bez puno truda:
Uzimamo pogon namijenjen za tu ulogu (flash disk, memorijsku karticu u čitaču kartica, tvrdi disk ili SSD u vanjskoj kutiji i formatiramo ga u Ext4 koristeći Čarobnjak za particije MiniTool Besplatno izdanje (Nemam računalo s Linuxom pri ruci, moguće je s ugrađenim alatima). Koliko sam shvatio, tijekom rada sustav zapisuje samo zapise na flash pogon, pa ako ih ograničite nakon postavljanja sustava, možete koristiti i memorijske kartice ako planirate puno i često pisati na pogon - SSD ili HDD je bolji.
Nakon toga povezujemo pogon s usmjerivačem i promatramo ga na zaslonu monitora sustava
Kliknite na “USB pogoni i pisači” u odjeljak “Aplikacije” i konfigurirajte zajedničko korištenje u odjeljku “Windows mreža”:
I imamo mrežni resurs koji se može koristiti s Windows računala, povezujući se kao disk ako je potrebno: net use y: \192.168.1.1SSD /persistent:yes
Brzina ovakvog improviziranog NAS-a sasvim je dovoljna za kućnu upotrebu, preko žice koristi cijeli gigabit, preko WiFi-a brzina je oko 400-500 megabita.
Postavljanje pohrane jedan je od nužnih koraka za konfiguriranje poslužitelja, a zatim nam je potrebno:
- kupiti domenu i statičku IP adresu (možete i bez toga pomoću dinamičkog DNS-a, ali ja sam već imao statičku IP adresu pa se pokazalo lakšim za korištenje besplatne Yandex usluge - delegiranjem domene tamo, primamo DNS hosting i poštu na našoj domeni);
Potrebno je nekoliko sati da postavke domene i delegiranja DNS-a stupe na snagu, tako da istovremeno postavljamo usmjerivač.
Prvo moramo instalirati Entware repozitorij iz kojeg možemo instalirati potrebne pakete na ruter. Iskoristio sam prednost s ovom uputom, samo nije prenio instalacijski paket putem FTP-a, već je stvorio mapu izravno na prethodno spojenom mrežnom disku i tamo kopirao datoteku na uobičajeni način.
Nakon što ste dobili pristup putem SSH-a, promijenite lozinku naredbom passwd i instalirajte sve potrebne pakete naredbom opkg install [package names]:
Tijekom postavljanja sljedeći su paketi instalirani na usmjerivaču (izlaz naredbe opkg list-installed):
Možda je tu bilo nečeg suvišnog, ali na disku je bilo puno prostora, pa se nisam trudio gledati u njega.
Nakon instaliranja paketa konfiguriramo nginx, probao sam sa dvije domene - druga je konfigurirana sa https, i za sada postoji stub. Interni priključci 81 i 433 koriste se umjesto 80 i 443, budući da administratorska ploča usmjerivača visi na normalnim priključcima.
Da bi stranica radila preko https-a, koristio sam dobro poznatu dehidriranu skriptu, instalirajući je pomoću ovu uputu. Ovaj proces nije izazvao nikakve poteškoće, samo sam naišao na činjenicu da u tekstu skripte za rad na mom ruteru trebate komentirati redak u datoteci /opt/etc/ssl/openssl.cnf:
[openssl_conf]
#engines=engines
Napominjem da generiranje dhparams.pem s naredbom “openssl dhparam -out dhparams.pem 2048” na mom usmjerivaču traje više od 2 sata, da nema indikatora napretka, izgubio bih strpljenje i ponovno pokrenuo sustav.
Nakon primitka certifikata ponovno pokrenite nginx naredbom “/opt/etc/init.d/S80nginx restart”. U principu, postavljanje je završeno, ali još nema web stranice - ako datoteku index.html stavimo u /share/nginx/html direktorij, vidjet ćemo stub.
Za lijepo postavljanje informacija, neprofesionalcu poput mene lakše je koristiti gotove predloške; nakon dugog pretraživanja po raznim katalozima, našao sam templatemo.com - postoji dobar izbor besplatnih predložaka koji ne zahtijevaju atribuciju (što je rijetkost na Internetu; većina predložaka u licenci zahtijeva da spremite vezu na izvor iz kojeg su dobiveni).
Odaberemo prikladan predložak - postoje oni za razne slučajeve, preuzmite arhivu i raspakirajte je u direktorij /share/nginx/html, to možete učiniti sa svog računala, a zatim uredite predložak (ovdje će vam trebati minimalno znanje HTML-a kako ne biste pokvarili strukturu) i zamijenite grafiku kao što je prikazano na donjoj slici.
Sažetak: ruter je sasvim prikladan za hostiranje lagane web stranice na njemu, u principu - ako ne očekujete veliko opterećenje, možete instalirati i php, i eksperimentirati sa složenijim projektima (gledam nextcloud/owncloud, čini se da postoje uspješne instalacije na takav hardver). Mogućnost instaliranja paketa povećava njegovu korisnost - na primjer, kada je bilo potrebno zaštititi RDP port računala na lokalnoj mreži, instalirao sam knockd na ruter - i prosljeđivanje porta na računalo otvaralo se tek nakon kucanja porta.
Zašto usmjerivač, a ne obično računalo? Usmjerivač je jedan od rijetkih računalnih dijelova hardvera koji u mnogim stanovima radi danonoćno; kućni usmjerivač obično je potpuno tih i lagana stranica s manje od stotinu posjeta dnevno neće mu smetati.