Server fizic ce ruleaza mai multe aplicatii web ce pot fi accesate pe un domeniu . Nu ai un server DNS

Ai un server fizic ce ruleaza mai multe aplicatii web ce pot fi accesate pe un domeniu . Nu ai un server DNS in sistemul unde este plasat acest server dar
aplicatiile trebuie sa fie capabile sa se acceseze intre ele prin acest domeniu .
Nu poti instla nici un server DNS separat , tot ce ai disponibil este acel server fizic legat la o interfata fizica de retea.Cum poti face astfel in cat aplicatiile sa se
poata accesa intre ele prin domeniul respectiv

Aplicatiile asculta pe port separat sau sunt toate sub vhost?

Port separat: Te conectezi prin IP:port direct
Vhost: pui intrari DNS in etc/hosts (similar si pe Windows)

3 Likes

Hmmm. Poate un header in request-ul către server.
Serverul să funcționeze ca un router si să facă forward către aplicația web dorită in funcție de header.

PS: mie imi pare copy/paste întrebarea.

Sună a întrebare de interviu :slight_smile:

2 Likes

sau examen

4 Likes

Eu am facut in configul Apache-ului un nou virtual host. Pe server mai aveam o aplicatie in java pe care am pus-o sa ruleze pe port diferit. Treba asta o poti face cam pe orice server fie ca este Apache, NGINX sau IIS

La mine insa a fost cazul in care aplicatie trebuia sa fie si expusa pe internet

configul meu (Atentie, nu este de productie)

Acum am observat ca initiatorul intreaba la greu intrebari din cursuri/interviuri. Poate ar trebui sa le intrebe pe toate la un loc?

Atunci ar trebui sa incerce sa le faca singur si cu Google daca este permis. Plus ceea ce are de la curs

1 Like

Sau poate ar trebui să vină și cu ceva de acasă, e.g. ce a încercat, cum se gândește să rezolve și unde s-a blocat, să putem purta discuții.

Altfel, lumea dedică timp și-i rezolvă temele fără o finalitate și utilitatea firelor astea pentru comunitate tinde spre 0 IMO.

Disclaimer: poate-s supărat și eu, că acum am observat că i-am răspuns și eu la o întrebare și habar n-am dacă a înțeles ceva și dacă a rezolvat. Suspansul mă ucide. Aș vrea să nu spun că așa-mi trebe, dacă vreau să-mi iau din timpul meu și să răspund pe net la întrebări, dar m-am mai ars recent pe alt forum și parcă-mi vine să mă apuc de croșetat, mai degrabă.

4 Likes

Intr-adevar, dar tine si putin de bun-simt si eticheta.

Mi se pare normal cand pui o intrebare sa-ti bati capul putin sa o pui intr-un mod cat mai concis si sa dai pe cat posibil tot contextul. Asta ia timp.

Acel timp investit intr-o intrebare/postare, aduce pe cei care raspund si care si ei la randul lor baga niste timp.

Dupa schimbul initial de idei, e bine sa ai si o finalitate; a reusit sau nu? Au fost bune ideile? Ce s-a intamplat intr-un final. Astfel, poate toata lumea sa invete din experienta cuiva.

Un minim de eticheta si bun simt pe un forum poate sa nasca niste discutii foarte interesante. Dar, nu toti oamenii au aceste doua lucruri dupa cum putem observa zilnic. Cateodata e hit and miss, dar asta e viata.

cum putem bloca un utilizator in acest forum? am gasit, ok

Hmm, sper ca nu e prea târziu dar eu am construit un așa environment utilizând docker, minimul necesar mai jos:

Ai un docker instalat, si iti faci o retea bridge.

  "IPAM": {
            "Driver": "default",
            "Options": {},
            "Config": [
                {
                    "Subnet": "172.110.0.0/23",
                    "Gateway": "172.110.0.1"
                }
            ]
        }

Ca sa comunice intre ele ai nevoie de un dns, eu folosesc pihole
In ultimul rand ai nevoie de proxy, eu folosesc Nginx Proxy Manager

Le configurezi astfel: DNS(pihole) il rulezi singur fără dependente, eventual bagi DNS Cloudflare

       DNS1: 1.1.1.1
       DNS2: 1.0.0.1

si il bagi in rețeaua virtuala din docker creata cu un IP static i.e: 172.110.0.2

Proxy il bagi la fel in reteaua de mai sus, fiind unicul container ce expune porturile 80,443.

Let there be fun :slight_smile:

Iti dau un exemplu : pui un container cu db, ip static 172.110.0.3 , dns il pui 172.110.0.2 si fara porturi expuse, face fwd reteaua.

din pihole configurezi local dns 172.110.0.3 - > mysql.intranet or whatever.

Sa zicem ca web ruleaza in container cu dns de mai sus si un ip static 172.110.0.4.

Acum mergi in proxy manager si initial iti configurezi un DNS wildcard, sau Let’s Encrypt pentru fiecare domeniu (asta ulterior) insa cu wildcard ai posibilitatea de a pune același certificat la toate apps expuse.

Ultimul pas e sa configurezi un subdomain i.e: sub.maindomain.ro la ip static 172.110.0.4:8080 si certificatul, https redirect and voila.

la fel poti face pt un alt container si tot ce faci e sa mai adaugi un sub2 la 172.110.0.5:port si ai alt app
pe acelasi domain.

Poate pare complicat dar e un exercitiu interesant si deja imi functioneaza de mai bine de un an.

Eventual eu mi-am pus si vpn conectat la aceasi retea virtuala, si cand sunt conectat, accesez direct cu mysql.intranet (chiar nefiind expus undeva)

Ce parere aveti ? :thinking:

P.S Ai nevoie sa configurezi DNS ca orice subdomain sa pointeze la server *.maindomain.ro - x.x.x.x

1 Like