Tropic Host

IT-Tools VPS-ում․ 86 գործիք ծրագրավորողների համար

2 րոպե կարդալ
Tropic
IT-Tools VPS-ում․ 86 գործիք ծրագրավորողների համար

IT-Tools․ 86 գործիք ծրագրավորողների համար մեկ VPS-ում

Պետք է վերծանել JWT, JSON-ը փոխարկել YAML-ի, ստուգել cron արտահայտությունը, հաշվել ենթացանցը կամ ստեղծել QR կոդ։ Սովորական տարբերակում պետք է բացել մի քանի պատահական կայք, փակել գովազդը և հերթով այնտեղ տեղադրել ձեր տվյալները։

IT-Tools-ը այդ ներդիրների հավաքածուն փոխարինում է մեկ միասնական վահանակով։ Նախագծի ընթացիկ տարբերակը ներառում է 86 գործիք՝ ծրագրավորման, ադմինիստրացիայի, ցանցերի, տեքստի և տվյալների հետ աշխատելու համար։ Սա անհայտ փորձնական նախագիծ չէ․ այս հոդվածը պատրաստելու պահին պահոցն GitHub-ում ուներ ավելի քան 40 000 աստղ, իսկ Docker-ի պաշտոնական պատկերի ներբեռնումների թիվը գերազանցել էր 10 միլիոնը։ Ծառայությունն անվճար է, բաց կոդով և աշխատում է ձեր սեփական սերվերում՝ մեկ կոնտեյների միջոցով։

Ստորև կտեսնենք, թե ինչու է IT-Tools-ը օգտակար, ինչ VPS է անհրաժեշտ դրա համար և ինչպես անվտանգ հասանելի դարձնել վահանակը ձեր սեփական դոմենի միջոցով։

IT-Tools-ը հինգ քայլով

  1. Պատրաստեք Linux VPS՝ Docker-ով։
  2. Գործարկեք IT-Tools-ի պաշտոնական կոնտեյները։
  3. Ստուգեք վահանակը 8080 պորտում։
  4. Միացրեք ենթադոմենը և reverse proxy-ի միջոցով ակտիվացրեք HTTPS-ը։
  5. Սահմանափակեք մուտքը VPN-ով, SSO-ով կամ լրացուցիչ նույնականացմամբ։

Արագ փորձարկման համար բավական է մեկ հրաման․

docker run -d \
  --name it-tools \
  --restart unless-stopped \
  -p 8080:80 \
  corentinth/it-tools:latest

Գործարկումից հետո բացեք http://SERVER_IP:8080 հասցեն։

Այս տարբերակը հարմար է փորձարկման, բայց ոչ մշտական հանրային հասանելիության համար։ Ավելի լավ է փակել արտաքին 8080 պորտը և հավելվածը տեղադրել HTTPS-ի ու մուտքի վերահսկման համակարգի հետևում։

Ի՞նչ է IT-Tools-ը

IT-Tools-ը փոքր վեբ-գործիքների հավաքածու է ծրագրավորողների և IT ենթակառուցվածքների մասնագետների համար։ Նախագիծը տարածվում է GNU GPLv3 լիցենզիայով, իսկ դրա սկզբնական կոդը հասանելի է GitHub-ում։

Հավելվածը ստեղծված է Vue-ի և TypeScript-ի միջոցով։ Production build-ը ստատիկ ինտերֆեյս է, որը պաշտոնական կոնտեյների ներսում մատուցվում է Nginx-ի կողմից։ Առանձին տվյալների բազա, Redis կամ հավելվածային սերվեր անհրաժեշտ չէ։ Դրա շնորհիվ IT-Tools-ը քիչ ռեսուրս է օգտագործում և հարմար է նույնիսկ փոքր VPS-ի համար։

Գործիքները բաժանված են տասը կատեգորիայի․

ԽնդիրԳործիքների օրինակներ
Կրիպտոգրաֆիաtoken-ներ, UUID, ULID, hash-եր, HMAC, bcrypt, RSA
ՓոխակերպումBase64, JSON, YAML, TOML, XML, CSV, Markdown
Վեբ մշակումJWT Parser, URL Parser, Basic Auth, OTP, HTTP status codes
DevOpscrontab, chmod, SQL Formatter, Docker Run to Docker Compose
ՑանցերIPv4 ենթացանցեր և միջակայքեր, MAC հասցեներ, IPv6 ULA
Տեքստ և մեդիատեքստի համեմատություն, վիճակագրություն, slug-եր, QR և Wi-Fi QR կոդեր

Սա հղումների ցուցակ չէ․ յուրաքանչյուր գործիք բացվում է ընդհանուր վահանակի ներսում և անմիջապես պատրաստ է օգտագործման։

Ինչու է IT-Tools-ը ավելի հարմար, քան պատահական առցանց ծառայությունները

Տասնյակ ներդիրների փոխարեն՝ մեկ ինտերֆեյս

Պետք է պահպանել միայն մեկ հասցե, օրինակ՝ tools.example.com։ Որոնումը Windows-ում և Linux-ում բացվում է Ctrl + K-ով, իսկ macOS-ում՝ Cmd + K-ով։ Այն որոնում է անունները, նկարագրությունները և կատեգորիաները, ուստի անհրաժեշտ գործիքը կարելի է գտնել մի քանի վայրկյանում։

Ընտրյալները հարմարեցվում են օգտվողին

Հաճախ օգտագործվող գործիքները կարելի է ամրացնել և քաշելով դասավորել հարմար հերթականությամբ։ Ցանկը պահվում է բրաուզերում՝ տեղային եղանակով։ Առանձին հաշիվ պետք չէ, սակայն ընտրյալները չեն համաժամացվում տարբեր սարքերի միջև և կջնջվեն, եթե մաքրվեն կայքի տվյալները։

Վահանակը կարելի է տեղադրել որպես հավելված

Նախագիծն ունի PWA-ի աջակցություն։ IT-Tools-ը կարելի է ավելացնել համակարգչի աշխատասեղանին կամ հեռախոսի հիմնական էկրանին և գործարկել առանձին պատուհանում։

Սեփական սերվերը տալիս է ավելի շատ վերահսկողություն

Հանրային փոխարկիչ օգտագործելիս պետք է վստահեք կայքի սեփականատիրոջը, դրա վերլուծական համակարգին և միացված սկրիպտներին։ Ձեր IT-Tools-ի օրինակը աշխատում է ձեր ընտրած ենթակառուցվածքի վրա, իսկ ստանդարտ տեղադրումը չի պահանջում սերվերային պահոց այն տվյալների համար, որոնք մուտքագրում եք։

Ինքնուրույն հոսթինգը յուրաքանչյուր գեներատոր չի դարձնում անվտանգության հավաստագրված գործիք։ Seed phrase-երը, private key-երը և այլ կարևոր գաղտնիքներ ավելի լավ է գեներացնել մեկուսացված միջավայրում՝ մասնագիտացված գործիքներով։

Գործիքներ, որոնք ամենաշատն են խնայում ժամանակը

  • JWT Parser-ը ցուցադրում է token-ի header-ը և payload-ը։ Սա օգտակար է նույնականացման վրիպազերծման ժամանակ, սակայն վերծանումը չի ստուգում ստորագրության իսկությունը։
  • Docker Run to Docker Compose-ը երկար գործարկման հրամանը փոխակերպում է ընթեռնելի Compose ֆայլի։ Փոխակերպումից հետո ուղիները, գաղտնիքները և ցանցերը միևնույն է պետք է ձեռքով ստուգել։
  • Crontab Generator-ը օգնում է ստեղծել ժամանակացույց և այն փոխակերպում է մարդու համար հասկանալի նկարագրության։
  • IPv4 Subnet Calculator-ը ցույց է տալիս դիմակը, միջակայքը, broadcast հասցեն և հասանելի հասցեների քանակը։
  • JSON, YAML, TOML և XML փոխարկիչները օգտակար են API-ների, կոնֆիգուրացիոն և deployment ֆայլերի հետ աշխատելիս։
  • Wi-Fi QR Code Generator-ը ստեղծում է կոդ, որի միջոցով կարելի է միանալ հյուրերի կամ գրասենյակի ցանցին՝ առանց գաղտնաբառը ձեռքով մուտքագրելու։

IT-Tools-ը չի փոխարինում հրամանային տողին, CI/CD-ին կամ ավտոմատացված թեստերին։ Եթե գործողությունը պետք է կրկնել հարյուրավոր անգամ, ավելի լավ է այն վերածել սկրիպտի։ Վահանակի ուժեղ կողմը մեկանգամյա արագ գործողություններն են և արդյունքի տեսողական ստուգումը։

Ո՞ւմ համար է IT-Tools-ը

Ծրագրավորողները արագ հասանելիություն են ստանում JWT գործիքներին, տվյալների ձևաչափմանը, SQL-ին և regular expression-ներին։ DevOps ինժեներներին օգտակար կլինեն cron-ը, chmod-ը, ցանցային հաշվարկները և Docker-ի փոխարկիչը։ Փոքր թիմը կարող է IT-Tools-ն օգտագործել որպես իր սեփական դոմենի ներքին էջ, իսկ homelab-ի սեփականատիրոջ համար սա պարզ առաջին ինքնուրույն հոսթինգով ծառայություն է, որը տվյալների բազա չի պահանջում։

IT-Tools-ի սերվերային պահանջները

Պաշտոնական նախագիծը խիստ ապարատային պահանջներ չի սահմանում։ Առանձին վահանակի համար սովորաբար բավարար է հետևյալ գործնական մեկնարկային կոնֆիգուրացիան․

  • 1 vCPU;
  • 1 GB RAM;
  • 5–10 GB սկավառակի տարածք՝ Linux-ի, պատկերների և լոգերի համար;
  • Ubuntu, Debian կամ Docker-ով մեկ այլ Linux բաշխում;
  • հանրային IP հասցե և դոմեն, եթե ծառայությունն անհրաժեշտ է տեղական ցանցից դուրս։

Կոնտեյները կարող է աշխատել ավելի քիչ հիշողությամբ, սակայն 1 GB-ը պահուստ է թողնում օպերացիոն համակարգի, SSH-ի, թարմացումների և reverse proxy-ի համար։ Այն այլ հավելվածների կողքին հոսթինգ անելիս հաշվի առեք դրանց համակցված բեռնվածությունը։

IT-Tools-ի տեղադրումը Docker Compose-ով

Երկարաժամկետ օգտագործման համար Compose-ն ավելի հարմար է, քանի որ ամբողջ կոնֆիգուրացիան պահվում է մեկ ֆայլում։

sudo mkdir -p /opt/it-tools
cd /opt/it-tools
sudo nano compose.yaml

Ավելացրեք․

services:
  it-tools:
    image: corentinth/it-tools:latest
    container_name: it-tools
    restart: unless-stopped
    ports:
      - "127.0.0.1:8080:80"

Գործարկեք կոնտեյները․

sudo docker compose up -d
sudo docker compose ps
curl -I http://127.0.0.1:8080

127.0.0.1-ին կապելը նշանակում է, որ պորտը հասանելի է միայն VPS-ի ներսում։ Արտաքին օգտվողները կմիանան reverse proxy-ի միջոցով։

Եթե docker compose հրամանը հասանելի չէ, Docker Engine-ի և Docker Compose plugin-ի ընթացիկ տարբերակը տեղադրեք Docker-ի պաշտոնական պահոցից։ Նոր տեղադրման համար հնացած docker-compose հրամանն անհրաժեշտ չէ։

Ինչպես միացնել դոմենը, HTTPS-ը և մուտքի պաշտպանությունը

Ստեղծեք DNS-ի A գրառում, որը մատնանշում է սերվերի IP հասցեն, օրինակ՝ tools.example.com։ Այնուհետև կարգավորեք Nginx-ը, Caddy-ն կամ Traefik-ը։ Caddy-ի դեպքում բավական է հետևյալը․

tools.example.com {
    reverse_proxy 127.0.0.1:8080
}

Caddy-ն կպահանջի TLS վկայագիր և հավելվածը հասանելի կդարձնի HTTPS-ով, մինչդեռ 8080 պորտը կմնա ինտերնետից անհասանելի։

IT-Tools-ի ստանդարտ բաշխումը լիարժեք օգտվողների և դերերի համակարգ չի ներառում։ Ներքին վահանակի համար ավելացրեք պաշտպանության հետևյալ մեթոդներից մեկը․

  • WireGuard, Tailscale կամ մեկ այլ VPN;
  • նույնականացում reverse proxy-ի մակարդակում;
  • SSO՝ Authelia-ի, Authentik-ի կամ կորպորատիվ նույնականացման մատակարարի միջոցով;
  • մուտքի սահմանափակումներ IP հասցեներով։

«Գաղտնի» ենթադոմենը անվտանգության միջոց չէ․ այն կարելի է հայտնաբերել certificate transparency-ի լոգերի կամ DNS սկանավորման միջոցով։

Թարմացումներ և պահուստային պատճեններ

cd /opt/it-tools
sudo docker compose pull
sudo docker compose up -d
sudo docker image prune -f

latest թեգը հարմար է տնային տեղադրման համար, սակայն կայուն միջավայրում ավելի լավ է ամրագրել փորձարկված image tag-ը կամ digest-ը։ Սկզբնական կոդի պահոցը կարող է զարգանալ ավելի արագ, քան կայուն կոնտեյները․ նոր nightly build-ն օգտագործեք միայն թեստավորումից հետո։

Բարդ պահուստավորում անհրաժեշտ չէ, քանի որ սերվերային տվյալների բազա չկա։ Պահպանեք compose.yaml-ը, reverse proxy-ի կոնֆիգուրացիան և մուտքի կարգավորումները։ Ընտրյալները պահվում են բրաուզերում և սերվերի պահուստային պատճենի մեջ չեն ներառվի։

IT-Tools-ը tropic.host-ի VPS-ում

IT-Tools-ը լավ ընտրություն է VPS-ում առաջին ինքնուրույն հոսթինգով ծառայության համար․ այն աշխատում է մեկ կոնտեյներում, տվյալների բազա չի պահանջում և գրեթե չի ստեղծում շարունակական բեռնվածություն։ Վահանակը կարելի է տեղադրել առանձին ենթադոմենում, պաշտպանել HTTPS-ով և հասանելի դարձնել միայն VPN-ի կամ նույնականացման միջոցով։

Այս խնդրի համար tropic.host-ի հիմնական Linux VPS-ը հարմար է։ Կարող եք սկսել փոքր կոնֆիգուրացիայից և հետագայում նույն սերվերում գործարկել Docker-ի այլ թեթև հավելվածներ, եթե RAM-ի և սկավառակի տարածքը բավարար է։ Ամենակարևոր գործոններն են կայուն ցանցը, կանոնավոր թարմացումները և ճիշտ կարգավորված մուտքը։

Եզրակացություն

IT-Tools-ը տասնյակ փոքր տեխնիկական գործողությունները վերածում է մեկ հստակ վահանակի։ Այն ներառում է փոխարկիչներ, գեներատորներ, ցանցային հաշվիչներ և JWT-ի, Docker-ի, cron-ի, SQL-ի, տեքստի ու QR կոդերի գործիքներ։

Այն գործարկելու համար բավական են փոքր VPS-ը և Docker-ը։ Հանրային տեղադրումը պետք է տեղադրել HTTPS-ի հետևում և պաշտպանել VPN-ով, SSO-ով կամ լրացուցիչ նույնականացմամբ։

FAQ

IT-Tools-ն անվճա՞ր է։

Այո։ Նախագիծը բաց կոդով է և տարածվում է GNU GPLv3 լիցենզիայով։ Այն կարող եք անվճար գործարկել ձեր սեփական սերվերում։

Քանի՞ գործիք է ներառված IT-Tools-ում։

Նախագծի ընթացիկ ռեեստրը ներառում է 86 գործիք՝ տասը կատեգորիաներում։ Ցանկը շարունակում է զարգանալ, ուստի թիվը հետագա տարբերակներում կարող է փոխվել։

IT-Tools-ը մուտքագրված տվյալներն ուղարկո՞ւմ է սերվեր։

Ինքնուրույն հոսթինգով տարբերակը ստատիկ client-side հավելված է՝ առանց առանձին տվյալների բազայի։ Մշակման մեծ մասը կատարվում է բրաուզերում։ Անվտանգությունը, այնուամենայնիվ, կախված է սերվերից, Docker image-ից, բրաուզերից, ընդլայնումներից և մուտքի կարգավորումներից։

Ի՞նչ VPS է անհրաժեշտ IT-Tools-ի համար։

Առանձին վահանակի համար սովորաբար բավարար են 1 vCPU-ն, 1 GB RAM-ը և մի քանի գիգաբայթ սկավառակի տարածքը։ Սա գործնական առաջարկ է՝ Linux-ի, Docker-ի և reverse proxy-ի համար պահուստով, ոչ թե պաշտոնական պահանջ։

Կարելի՞ է IT-Tools-ը հասանելի դարձնել ամբողջ թիմի համար։

Այո։ Տեղադրեք ծառայությունն առանձին դոմենում, ակտիվացրեք HTTPS-ը և սահմանափակեք մուտքը VPN-ի, SSO-ի, Basic Auth-ի կամ IP հասցեների allowlist-ի միջոցով։