Puncte:1

Este posibil să permiteți numai HTTPS și să blocați HTTP pe un port arbitrar

drapel in

Folosim RHEL și trebuie să deschidem un port neprivilegiat și arbitrar, de exemplu, portul 12345, unui utilizator obișnuit. Acest utilizator obișnuit trebuie să ruleze un serviciu HTTP care ascultă pe acest port și fiecare computer din rețeaua LAN poate accesa serviciul. Având în vedere natura serviciului pe care trebuie să îl ruleze utilizatorul, este puțin probabil ca proxy invers să funcționeze, iar serviciul utilizatorului trebuie să asculte direct pe port și să-și servească clienții.

Dorim să forțăm utilizatorul să își asigure serviciul cu un certificat SSL, dar în prezent nu avem o modalitate bună de a face acest lucru din punct de vedere tehnic. (În prezent, tot ce facem acum este să reamintim în continuare utilizatorului să configureze corect HTTPS.)

Întrebarea este: ar fi posibil ca un administrator de sistem să forțeze un port să servească numai conținut HTTPS și să presupunem că utilizatorul folosește HTTP simplu (cu bună știință sau fără să știe), traficul va fi blocat?

De obicei, fac acest lucru cu un proxy invers - serviciile interne ascultă numai pe localhost și un program server HTTP dedicat, cum ar fi Apache, este folosit pentru a gestiona partea SSL. Această abordare nu funcționează ușor de data aceasta, deoarece serviciul web este destul de complicat (presupun că ar putea funcționa cu niște reguli de rescriere la fel de complicate), așa că mă întreb dacă există o altă abordare mai simplă.

Mulțumiri!

djdomi avatar
drapel za
vă rugăm să furnizați dispozitivul firewall folosit
Alex Kong avatar
drapel in
ce vrei sa spui prin dispozitiv firewall @djdomi? Acesta este un server RHEL independent. Dacă te referi la program firewall, în prezent folosim firewalld, dar suntem deschiși la orice alte programe dacă este necesar.
Alex avatar
drapel us
Dacă utilizatorii folosesc aceste porturi, îmi imaginez că pornesc un demon sau rulează o aplicație/script care pornește de fapt serverul web. Este posibil să rescrieți acest script care este furnizat utilizatorilor astfel încât să fie acceptate numai conexiunile HTTPS? Sau, dacă scriptul configurează un server web (de exemplu, Apache) - din nou, puteți fie să blocați complet HTTP, fie să stabiliți o redirecționare către HTTPS la nivel de Apache... Ar fi posibil? Vă rugăm să împărtășiți câteva detalii despre modul în care utilizatorii lansează serverul web, poate comunitatea va sugera ceva.
Alex Kong avatar
drapel in
Bună @Alex, problema este că nu vreau să presupun că utilizatorii respectă întotdeauna standardul nostru - din moment ce le deschidem un port, este posibil ca să sară peste scriptul meu și să-și folosească propriile scripturi (care folosesc HTTP) . Prin urmare, ceea ce vreau să am este ceva similar cu un firewall care poate interzice acest lucru. În ceea ce privește utilizarea Apache, mi se pare că acest lucru ar putea fi destul de dificil de setat - scriptul pe care îl vor folosi utilizatorii are propriile setări de redirecționare/port/url relativ/etc. Crezi că există încă o modalitate simplă de a folosi Apache?
Alex avatar
drapel us
Nu, dacă utilizatorii își pot crea propriile scripturi și pot schimba configurația Apache, atunci abordarea mea nu ar funcționa, cred.Am presupus fie că toți utilizatorii au un script comun pe care îl rulează, fie toți folosesc Apache cu site-ul implicit, astfel încât să poată fi înghețat la nivel de sistem. Dacă toată lumea folosește Apache, ar putea (s-ar putea să nu!) să fie posibil să se creeze o regulă globală de rescriere pentru toate site-urile care va forța HTTP la HTTPS și să revoce accesul la scriere la acel fișier de configurare Apache. Această opțiune pare mai ușor de explorat în comparație cu inspectarea întregului trafic și blocarea lui din mers - aceasta este o sarcină pentru WAF, sau cel puțin NGFW.
Alex Kong avatar
drapel in
Bună @Alex, poate că nu m-am clarificat. "utilizatorii își pot crea propriile scripturi" -> Acest lucru este corect; „utilizatorii pot schimba configurația Apache” -> nu, NU pot schimba setările Apache. Dar în prezent Apache nu este folosit - utilizatorii își folosesc doar scripturile pentru a asculta pe un anumit port. Motivul pentru care Apache nu este folosit este că nu am reușit să găsesc o modalitate de a face toate scripturile compatibile cu proxy-ul invers al Apache...

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.