IT-Tools․ 86 գործիք ծրագրավորողների համար մեկ VPS-ում
Պետք է վերծանել JWT, JSON-ը փոխարկել YAML-ի, ստուգել cron արտահայտությունը, հաշվել ենթացանցը կամ ստեղծել QR կոդ։ Սովորական տարբերակում պետք է բացել մի քանի պատահական կայք, փակել գովազդը և հերթով այնտեղ տեղադրել ձեր տվյալները։
IT-Tools-ը այդ ներդիրների հավաքածուն փոխարինում է մեկ միասնական վահանակով։ Նախագծի ընթացիկ տարբերակը ներառում է 86 գործիք՝ ծրագրավորման, ադմինիստրացիայի, ցանցերի, տեքստի և տվյալների հետ աշխատելու համար։ Սա անհայտ փորձնական նախագիծ չէ․ այս հոդվածը պատրաստելու պահին պահոցն GitHub-ում ուներ ավելի քան 40 000 աստղ, իսկ Docker-ի պաշտոնական պատկերի ներբեռնումների թիվը գերազանցել էր 10 միլիոնը։ Ծառայությունն անվճար է, բաց կոդով և աշխատում է ձեր սեփական սերվերում՝ մեկ կոնտեյների միջոցով։
Ստորև կտեսնենք, թե ինչու է IT-Tools-ը օգտակար, ինչ VPS է անհրաժեշտ դրա համար և ինչպես անվտանգ հասանելի դարձնել վահանակը ձեր սեփական դոմենի միջոցով։
IT-Tools-ը հինգ քայլով
- Պատրաստեք Linux VPS՝ Docker-ով։
- Գործարկեք IT-Tools-ի պաշտոնական կոնտեյները։
- Ստուգեք վահանակը
8080պորտում։ - Միացրեք ենթադոմենը և reverse proxy-ի միջոցով ակտիվացրեք HTTPS-ը։
- Սահմանափակեք մուտքը 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 |
| DevOps | crontab, 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:8080127.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 -flatest թեգը հարմար է տնային տեղադրման համար, սակայն կայուն միջավայրում ավելի լավ է ամրագրել փորձարկված 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-ի միջոցով։
