Tegyük fel, hogy valamilyen oknál fogva nem férünk hozzá szerverünkhöz terminállal, mert talán az utcán járunk, és csak a mobiltelefonunk van fent, és mivel nem vagyunk geekek, vagy bármi más, ezért nem telepítettünk ilyen típusú alkalmazásokat .
Akkor mit csináljunk? Nos, semmi, addig nem tehetünk semmit, amíg haza nem érünk, vagy dolgozunk, elérjük a szerverünket és telepítjük shellinabox. De mi ez, eszel?
shellinabox
shellinabox megvalósítja Egy szerver web, amely képes export vonal eszközök parancs a terminál emulátor web-alapú. Ez az emulátor minden támogatott böngészőből elérhető JavaScript és a CSS y nem igényli Semmiféle csatlakoztat kiegészítő funkció.
Bár az eredeti projektet megszüntették, vannak egy villa a Githubon amely lehetővé teszi számunkra a telepítést, ha nincs a tárokban. Az Ubuntu 14.04 esetében ez van, ezért csak meg kell nyitnunk egy terminált és be kell tennünk:
$ sudo apt install shellinabox openssl ca-certificates
Az utolsó két csomag esetében arra az esetre van szükség, ha még nem telepítettük őket. És ha ez megtörtént, a böngésző behelyezésével hozzáférhetünk terminálunkhoz az interneten:
http://la_ip_o_nombre_del_servidor:4200
Használja a Shellinaboxot a 80-as porton keresztül
Mint látható, a Shellinabox alapértelmezés szerint a portot használja 4200 és nem biztos, hogy hozzáférünk hozzá, ha szolgáltatónk blokkolja. Használhatunk egy nem biztonságos, de működőképes változatot, amelyet használni kell shellinabox A kikötőnél 80, bár később megmutatom, hogyan kell használni a 443 ha rendelkezésünkre áll.
Amit meg fogunk tenni, az az, hogy elérjük a Shellinaboxot a böngészőnk beírásával:
http://la_ip_o_nombre_del_servidor/terminal
Ehhez először az NGinx-et telepítjük:
$ sudo apt install nginx
Most létrehozzuk a fájlt / etc / nginx / sites-enabled / shellinabox és beleraktuk:
szerver {proxy_set_header Host $ http_host; proxy_set_header X-Forwarded-Host $ http_host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for; hely / terminál / {proxy_pass http: // localhost: 4200 /; }}
Szerkesztjük a fájlt / etc / default / shellinabox és a végére tesszük:
SHELLINABOX_ARGS="--localhost-only --disable-ssl"
Újraindítjuk Nginx y shellinabox:
$ sudo /etc/init.d/shellinabox restart $ sudo /etc/init.d/nginx restart
És kész !!
Használja a Shellinaboxot a 443-as porton keresztül
Ez a folyamat kissé nehézkesebb, mert létre kell hoznunk az SSL tanúsítványokat. Ehhez a következőket tesszük:
Először telepítjük az OpenSSL-t:
$ sudo apt-get install openssl
Létrehozunk egy privát kulcsot:
openssl genrsa -out server.key 2024
Létrehozzuk a tanúsítvány alapját, ahova adatsorokat teszünk:
openssl req -new -key server.key -out server.csr
A kitöltendő adatok a következők lesznek:
- Ország neve (kétbetűs kód): Országkód kétbetűs ISO formátumban (pl .: ES, US, CU, MX ..).
- Állam vagy tartomány neve (teljes név): Állam vagy tartomány (pl .: Florida).
- Helység neve: Város (pl .: Miami).
- Szervezet neve: A szervezet neve (pl. DesdeLinux).
- Szervezeti egység neve: A szervezet szektora (pl .: Blogok).
- Gyakori név: Domain név vagy FQDN. Fontos tudni, hogy van különbség a blogok között.desdelinux.net és desdelinux.háló. Az egyikhez vagy a másikhoz regisztrálnia kell a tanúsítványt.
- Email cím: Kapcsolattartási email cím.
- Kihívási jelszó: Fehérben.
- Opcionális cégnév: Fehérben.
Most létrehozzuk az SSL tanúsítványt, amely a megadott adatokat veszi fel:
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
Másoljuk a tanúsítványokat az SSL mappába az / etc könyvtárban:
$ sudo cp server.crt /etc/ssl/certs/ssl.crt $ sudo cp server.key /etc/ssl/certs/ssl.key
A fájlt újra szerkesztjük / etc / default / shellinabox és megváltoztatjuk az általunk tetteket, a végére téve:
SHELLINABOX_ARGS="--no-beep"
Most szerkesztjük a fájlt / etc / nginx / sites-enabled / shellinabox és beleraktuk:
szerver {hallgat 80; return 301 https: // $ host $ request_uri; } szerver {hallgat 443; szerver_neve myvps.com; ssl_certificate /etc/ssl/certs/ssl.crt; ssl_certificate_key /etc/ssl/certs/ssl.key; ssl be; beépített ssl_session_cache: 1000 megosztott: SSL: 10m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH :! aNULL :! eNULL :! EXPORT :! CAMELLIA :! DES :! MD5 :! PSK :! RC4; ssl_prefer_server_ciphers be; access_log /var/log/nginx/shellinabox.access.log; hely / terminál {proxy_set_header Host $ host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $ séma; # Javítsa ki a „Úgy tűnik, hogy a fordított proxy beállítása meghibásodott” hibát. Proxy_pass http: // localhost: 4200 /; proxy_read_timeout 90; proxy_redirect http: // localhost: 4200 https://myvps.com/terminal/;} }
Újraindítjuk a szolgáltatásokat:
$ sudo /etc/init.d/shellinabox restart $ sudo /etc/init.d/nginx restart
és hozzáférünk
http://la_ip_o_nombre_del_servidor/terminal
amelynek át kellene irányítania minket:
https://la_ip_o_nombre_del_servidor/terminal
És ennyi.
Eszembe juttatta, mi jelenik meg a CSI sorozatban
A legérdekesebb bejegyzés; Soha nem hallottam erről a segédprogramról, és az az igazság, hogy ez a legfurcsább és leghasznosabb ... Feltételeznem kell, hogy ahogy ezt a koncepciót alkalmazták a Ngix-re, az Apache-ra is igaz, igaz?
Eszembe juttatja a Butterfly működését, különösen, ha a terminált a böngészőből használom. Természetesen nem annyira bonyolultan, mint amit itt mutatnak 🙂
«Feltételezzük, hogy valamilyen oknál fogva nem férünk hozzá szerverünkhöz terminállal, mert talán az utcán járunk, és csak a mobiltelefonunk van fent, és mivel nem vagyunk stréberek, vagy bármi más, ezért nem telepített bármilyen ilyen típusú alkalmazást. "
Hogyan akarjuk megadni a szerverünket, ha nem vagyunk geekek? hahaha
Számomra sokkal gyorsabbnak tűnik az ssh alkalmazás használata, mint a böngésző használata, és elkerüli a szoftverek telepítését a szerverre, de még mindig érdekes megoldás.
Előny, ha tiszta Windows rendszerrel rendelkezik.
"Előny, ha tiszta Windows rendszerrel rendelkezik."
gittet vagy cicát csábít.
kiváló férfiak, ez a szuper köszönet a hozzájárulásért