Më ka bërë gjithmonë përshtypje "të prek" shërbimet e internetit, duke konfiguruar një server web nga zeros dhe duke e çuar atë në internet. Në këtë artikull, do të ndaj përvojën e fituar në shndërrimin e një routeri shtëpie nga një pajisje me funksion të kufizuar në një server të pothuajse plotë.
Ishte fillimi i gjithçkaje që routeri TP-Link TL-WR1043ND, që kishte shërbyer besnikërisht, nuk e plotësonte më nevojat e rrjetit të shtëpisë, dhe kishte dëshirë për bandën 5 GHz dhe qasje të shpejtë në skedarët në një disk të lidhur me routerin. Pasi shqyrtova forume të specializuara (4pda, ixbt), faqe me komente dhe shikova në asortimentin e dyqaneve lokale, vendosa të blija Keenetic Ultra.
Për këtë pajisje, luajtën mirë komentet e mira të pronarëve:
- mungesa e problemeve me nxehtësinë (këtu u përgjigja për të hequr dorë nga produktet Asus);
- besueshmëria në punë (këtu përjashtova TP-Link);
- thjeshtësia në konfigurim (kisha frikë se nuk do të arrija dhe përjashtova Microtik).
Më duhej të pajtohesha me disavantazhet:
- nuk ka WiFi6, doja të merrja pajisje me rezerva për të ardhmen;
- 4 porta LAN, doja më shumë, por kjo nuk është më kategori e shtëpisë.
Në fund, rezultoi një "server":

- në të majtë terminali optik i Rostelekom;
- në të djathtë routeri ynë eksperimental;
- me kabllon në router është i lidhur një m.2 SSD prej 128 GB, i vendosur në një kuti USB3 nga AliExpress, tani është i mbështetur mirë në mur;
- në plan të parë ka një zgjerues me ndezje të pavarur të prizave, kablli nga ai shkon në një UPS të lirë;
- në plan të prapmë, një grup kabujsh të mesëm - gjatë fazës së rinovimit të apartamentit, e kisha planifikuar menjëherë të vendosja prizat RJ45 në vendet e propozuara për vendosjen e pajisjeve, që të mos varej nga papastrimi i WiFi.
Pra, kemi pajisjet, duhet t'i konfigurojmë ato:

- konfigurimi fillestar i routerit zgjat rreth 2 minuta, caktojmë parametrat e lidhjes me ofruesin (terminali im optik është kaluar në modalitetin bridge, lidhja PPPoE e ngrit routerin), emri i rrjetit WiFi dhe fjalëkalimi - në parim, kjo është e gjitha, routeri fillon dhe punon.

Vendosim ridrejtimin e porteve të jashtme në portet e vetë routerit në seksionin "Rregullat e Rrjetit - Ridrejtimi":


Tani mund të kalojmë në pjesën "e avancuar", që doja nga routeri:
- funksionaliteti i një NAS të vogël për rrjetin e shtëpisë;
- kryerja e funksioneve të një serveri web për disa faqe personale;
- funksionaliteti i cloud-it personal për qasje në të dhënat personale nga çdo vend në botë.
E para realizohet nga mjete të integruara, pa kërkuar përpjekje të veçanta:
- marrim njĂ« drive tĂ« destinuar pĂ«r kĂ«tĂ« rol (njĂ« USB, njĂ« kartĂ« memorie nĂ« kartĂ« lexuese, njĂ« disk tĂ« fortĂ« ose njĂ« SSD nĂ« njĂ« kuti tĂ« jashtme dhe e formatizojmĂ« nĂ« Ext4 me ndihmĂ«n e (unĂ« nuk kam njĂ« kompjuter me linux nĂ« dorĂ«, atje mund tĂ« pĂ«rdoren mjete tĂ« integruara). TĂ« paktĂ«n si kuptoj unĂ«, gjatĂ« punĂ«s sistemi shkruan nĂ« USB vetĂ«m loge, prandaj, nĂ«se i kufizoni ata pas konfigurimit tĂ« sistemit â mund tĂ« pĂ«rdoren edhe kartat e memories, nĂ«se planifikoni tĂ« shkruani shumĂ« dhe shpesh nĂ« drive â Ă«shtĂ« mĂ« mirĂ« tĂ« pĂ«rdorim njĂ« SSD ose HDD.

Pas kësaj lidheni drive-in në router dhe e shihni atë në ekranin e monitorit të sistemit.

Kaloni duke klikuar mbi "USB-disk dhe printera" në seksionin "Aplikacione" dhe konfiguroni burimin e përbashkët në seksionin "Rrjeti Windows":

Kështu kemi një burim të rrjetit, që mund të përdoret me kompjuterë Windows, duke u lidhur si një disk në rast nevoje: net use y: \192.168.1.1SSD /persistent:yes
Shpejtësia e këtij NAS-i improvizuar është mjaft e mjaftueshme për përdorim në shtëpi, përmes kabllit përdor të gjithë gigabitin, ndërsa në WiFi shpejtësia është rreth 400-500 megabit.

Konfigurimi i depotit është një nga hapat e nevojshëm për konfigurimin e serverit, më pas na nevojitet:
â dhe njĂ« IP statike (mund tĂ« kalosh edhe pa kĂ«tĂ«, duke pĂ«rdorur Dynamic DNS, por unĂ« tashmĂ« e kam njĂ« IP statike, kĂ«shtu qĂ« mĂ« erdhi mĂ« e lehtĂ« tĂ« shfrytĂ«zoja â , marrim DNS-hosting dhe postĂ« nĂ« domenin tonĂ«);

â dhe tĂ« shtojmĂ« A-rekordet qĂ« tregojnĂ« nĂ« IP tuaj:

Të hysh në fuqi të rregullimeve të delegimit të domenit dhe DNS merr disa orë, prandaj për paralel pe lle himi do të punojmë në konfigurimin e router-it.
Fillimisht duhet të instaloni repository-në Entware, nga të cilat mund të vononi paketat e nevojshme në router. Unë përdora , vetëm se nuk e ngjita paketën e instalimit përmes FTP, por krijova një dosje direkt në disku rrjetor të lidhur më parë dhe e kopjova atë atje në mënyrë të zakonshme.
Duke fituar qasje përmes SSH, ndryshojmë fjalëkalimin me komandën passwd dhe instalojmë me komandën opkg install [emrat e paketave] të gjitha paketat e nevojshme:

Gjatë konfigurimit në router u gjetën të instaluara paketat e mëposhtme (rezultati i daljes nga komanda opkg list-installed):
Lista e paketeve
bash â 5.0-3
busybox â 1.31.1-1
ca-bundle â 20190110-2
ca-certificates â 20190110-2
coreutils â 8.31-1
coreutils-mktemp â 8.31-1
cron â 4.1-3
curl â 7.69.0-1
diffutils â 3.7-2
dropbear â 2019.78-3
entware-release â 1.0-2
findutils â 4.7.0-1
glib2 â 2.58.3-5
grep â 3.4-1
ldconfig â 2.27-9
libattr â 2.4.48-2
libblkid â 2.35.1-1
libc â 2.27-9
libcurl â 7.69.0-1
libffi â 3.2.1-4
libgcc â 8.3.0-9
libiconv-full â 1.11.1-4
libintl-full â 0.19.8.1-2
liblua â 5.1.5-7
libmbedtls â 2.16.5-1
libmount â 2.35.1-1
libncurses â 6.2-1
libncursesw â 6.2-1
libndm â 1.1.10-1a
libopenssl â 1.1.1d-2
libopenssl-conf â 1.1.1d-2
libpcap â 1.9.1-2
libpcre â 8.43-2
libpcre2 â 10.34-1
libpthread â 2.27-9
libreadline â 8.0-1a
librt â 2.27-9
libslang2 â 2.3.2-4
libssh2 â 1.9.0-2
libssp â 8.3.0-9
libstdcpp â 8.3.0-9
libuuid â 2.35.1-1
libxml2 â 2.9.10-1
locales â 2.27-9
mc â 4.8.23-2
ndmq â 1.0.2-5a
nginx â 1.17.8-1
openssl-util â 1.1.1d-2
opkg â 2019-06-14-dcbc142e-2
opt-ndmsv2 â 1.0-12
php7 â 7.4.3-1
php7-mod-openssl â 7.4.3-1
poorbox â 1.31.1-2
terminfo â 6.2-1
zlib â 1.2.11-3
zoneinfo-asia â 2019c-1
zoneinfo-europe â 2019c-1
Mund të ketë diçka të tepërt këtu, por ka shumë hapësirë në ruajtje, prandaj nuk u mora me të.
Pas instalimit të pakove, konfiguroni nginx, kam provuar me dy domena - në të dytin është parë https dhe për momentin ka një faqe mbyllëse. Portet e brendshme 81 dhe 433 përdoren në vend të 80 dhe 443, sepse në portet normale janë administratat e routerit.
etc/nginx/nginx.conf
përdorues askush;
proceset_e_punës 1;
#error_log /opt/var/log/nginx/error.log;
#error_log /opt/var/log/nginx/error.log notice;
#error_log /opt/var/log/nginx/error.log info;
#pid /opt/var/run/nginx.pid;
events {
lidhjet_e_punës 64;
}
http {
përfshi mime.types;
lloji_default application/octet-stream;
#format_log kryesor '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#logimi_i_qasjes /opt/var/log/nginx/access.log kryesor;
dërgo_fajllin on;
#tcp_nopush on;
#koha_e_mbajtjes 0;
koha_e_mbajtjes 65;
#gzip on;
server {
dëgjo 81;
emri_i_serverit milkov.su www.milkov.su;
kthe 301 https://milkov.su$request_uri;
}
server {
dëgjo 433 ssl;
emri_i_serverit milkov.su;
#Përkrahja SSL
përfshi ssl.conf;
lokacion / {
rrënja /opt/share/nginx/html;
indeksi index.html index.htm;
page_error 500 502 503 504 /50x.html;
lokacion = /50x.html {
rrënja html;
}
}
}
certifikata_ssl /opt/etc/nginx/certs/milkov.su/fullchain.pem;
çelësi_certifikates_ssl /opt/etc/nginx/certs/milkov.su/privkey.pem;
ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';
prefero_ssl_çifrat_nga_serveri on;
ssl_dhparam /opt/etc/nginx/dhparams.pem;
cache_ssl_session shared:SSL:10m;
timeo_ssl_session 5m;
ssl_stapling on;Për të bërë që faqja të funksionojë me https, kam përdorur skenarin e njohur dehydrated, duke e instaluar atë sipas . Ky proces nuk pati vështirësi, u ngatërrova vetëm me faktin se në tekstin e skenarit për të punuar në routerin tim /opt/etc/ssl/openssl.cnf:
[openssl_conf]
#motora=motoratDhe do tĂ« theksoj se gjenerimi i dhparams.pem me komandĂ«n "openssl dhparam -out dhparams.pem 2048" nĂ« routerin tim zgjat mĂ« shumĂ« se 2 orĂ«, nĂ«se nuk do tĂ« isha me treguesin e progresit â do tĂ« kisha humbur durimin dhe do ta kisha ristartuar.
Pas marrjes sĂ« certifikatave, rinstalojmĂ« nginx me komandĂ«n "/opt/etc/init.d/S80nginx restart". NĂ« thelb, kjo Ă«shtĂ« fundi i konfigurimit, por faqja ende nuk ekziston â nĂ«se vendosim nĂ« katalogun /share/nginx/html skedarin index.html, do tĂ« shohim njĂ« tĂ« dhĂ«nĂ«.
index.html
<!DOCTYPE html>
<html>
<head>
<title>Faqja e testimit!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Faqja e testimit!</h1>
<p>Kjo është një faqe statike testimi, krejtësisht asgjë interesante.</p>
</body>
</html>PĂ«r tĂ« vendosur informacionin nĂ« mĂ«nyrĂ« tĂ« bukur, pĂ«r njĂ« person tĂ« papĂ«rgatitur si unĂ« Ă«shtĂ« mĂ« e lehtĂ« tĂ« pĂ«rdor modele tĂ« gatshme, pas njĂ« kĂ«rkimi tĂ« gjatĂ« nĂ«pĂ«r katalogje gjeta â atje ka njĂ« zgjedhje tĂ« mirĂ« tĂ« shablloneve falas, qĂ« nuk kĂ«rkojnĂ« detyrimin pĂ«r tĂ« shĂ«nuar autorĂ«sinĂ« (çka Ă«shtĂ« e rrallĂ« nĂ« internet, pjesa mĂ« e madhe e shablloneve nĂ« licencĂ« kĂ«rkojnĂ« tĂ« ruhet lidhja me burimin nga ku janĂ« marrĂ«).
Zgjidhim shabllonin e duhur â atje ka pĂ«r raste tĂ« ndryshme, shkarkojmĂ« arkivin dhe e zbĂ«rthejmĂ« atĂ« nĂ« katalogun /share/nginx/html, mund ta bĂ«jmĂ« kĂ«tĂ« nga kompjuteri ynĂ«, pastaj editojmĂ« shabllonin (kĂ«tu kĂ«rkohen njohuri minimale tĂ« HTML, nĂ« mĂ«nyrĂ« qĂ« tĂ« mos dĂ«mtohet struktura) dhe zĂ«vendĂ«sojmĂ« grafikĂ«n, siç tregohet nĂ« figurĂ«n mĂ« poshtĂ«.

PĂ«rmbledhje: routeri Ă«shtĂ« mjaft i pĂ«rshtatshĂ«m pĂ«r tĂ« akomoduar njĂ« faqe tĂ« lehtĂ«, nĂ« parim â nĂ«se nuk parashikohet njĂ« ngarkesĂ« e madhe, mundet. , dhe tĂ« eksperimentojmĂ« me projekte mĂ« tĂ« komplikuara (po shikoj nextcloud/owncloud, duket se ka instalime tĂ« suksesshme nĂ« kĂ«tĂ« harduer). MundĂ«sia pĂ«r tĂ« instaluar paketa e rrit dobishmĂ«rinĂ« e tij â pĂ«r shembull, kur ishte e nevojshme tĂ« mbrohej porta RDP e PC nĂ« rrjetin lokal, vendosa knockd nĂ« router â dhe kalimi i portĂ«s nĂ« PC hapte vetĂ«m pas port knocking.
Pse pikërisht routeri, e jo një PC i zakonshëm? Routeri është një nga pak pajisjet kompjuterike që funksionojnë 24 orë në ditë në shumë apartamente, routeri shtëpiak zakonisht është krejtësisht i heshtur dhe një faqe e lehtë me numrin e vizitave në ditë më pak se njëqind nuk do ta stresojë aspak.
Burimi: habr.com
