- Accueil
- » Forum
- » Serveurs
- » Serveur Nginx
Pages : 1
#1 Le 08/03/2024, à 07:48
- Chriss2426
Serveur Nginx
Bonjour à tous,
Voilà maintenant plusieurs jours que je bloque sur un problème et je n'ai pas trouvé de réponse avec notre ami Google
J'explique mon soucis, j'ai un serveur Home Assistant qui fonctionne sur une Raspberry et qui est configuré avec Nginx Proxy Manager (et qui fonctionne parfaitement bien)
Et pour une petite radio local de ma région j'ai créé un serveur Icecast (serveur de Streaming).
Tout fonctionne assez bien quand je mets mon url de ma domotique j’arrive bien sur ma rpi et lorsque je mets l’url du streaming (avec redirection de port) j’arrive sur le serveur Ubuntu (Icecase) jusqu'à ce que je m'aperçois dans les logs du serveur Icecast que tous les clients se connectent avec l'ip lde ma RPI.
Je décide de créé une nouvelle VM avec juste Nginx Proxy Manager et j’ai essayer de faire un true sur le forward IP etc mais sans réussite.
Ma question est donc, il y aurait une autre solution que Nginx Proxy Manager ? Redirection de nom de domaine, création de certificats etc.
Pour faire simple j’aimerais arriver sur le port 80 ou 443 de mon firewall vers le serveur Linux et que lui redirige vers les bonnes ressources.
Merci d’avance pour votre retour ?
Bonne journée
Hors ligne
#2 Le 08/03/2024, à 18:33
- Vobul
Re : Serveur Nginx
T'as HAProxy qui est top. Mais nginx tout court fait très bien le job d'un reverse proxy. T'as aussi des trucs comme Traefik pour des services containerisés. Y'a Caddy aussi qui facilite les certificats. Bref, c'est pas le choix qui manque.
Je conseille de s'éloigner de solutions qui disent faciliter les choses en ajouter une couche d'abstraction. Il est préférable à mon sens de savoir configurer nginx tout seul, avant d'utiliser un nginx groupé avec autre chose, ce qui semble être ce que tu veux faire
Côté réseau tu peux imaginer avoir Box -> VM Reverse proxy/load balancer (nginx OU autre) -> services sur même vm ou autre
Donc ta box ouvre seulement le port 443 et redirige le tout sur le port 4443 de ta VM RP (port > 1000 pour ne pas avoir à lancer le service avec root, mais je pinaille). Et le rôle de ton RP c'est de rediriger sur le bon service, gérer les certificats, et renvoyer dans les choux ceux qui n'ont rient à faire là.
Après si tu commences à t'intéresser à tout ça et à vouloir héberger des services web, c'est quand même mieux d'avoir un VPS dédié sur un réseau dédié plutôt que d'ouvrir ton réseau interne, mais bon fais comme tu veux
Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM
Hors ligne
#3 Le 08/03/2024, à 19:40
- krodelabestiole
Re : Serveur Nginx
oui : haproxy (dont c'est le boulot principal), traefik (boulot principal aussi, meilleur choix si tu fais du docker), caddy (qui fait une grosse concurrence à nginx) ou même apache. mais nginx est aussi en mesure de faire le boulot.
nouveau forum ubuntu-fr on en parle là : refonte du site / nouveau design
profil - sujets récurrents - sources du site
Hors ligne
#4 Le 09/03/2024, à 23:34
- Chriss2426
Re : Serveur Nginx
bonjour,
tout d'abord merci pour vos retours, j'ai écouté vos conseils et j'ai fais un serveur avec "juste" nginx.
J'ai réussis a l'installer et a configuré ma domotique et la webradio.
J'ai également réussis a configurer les certificats SSL.
Mais mon problème est toujours le même pour la webradio, j'arrive toujours avec l'ip privé du serveur nginx.
Je sais pas si en postant la config vous pourriez éventuellement me guider ?
Bonne soirée
La conf :
server {
server_name radio.xxx.be;
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-For $client_ip;
proxy_set_header x-real-ip $remote_addr;
proxy_set_header X-forwarded-for $proxy_add_x_forwarded_for;
proxy_set_header Accept-Encoding "";
proxy_pass [url]http://192.168.1.50:8002[/url];
sub_filter_types application/xspf+xml audio/x-mpegurl audio/x-vclt text/css text/html text/xml;
sub_filter '@localhost' '@radio.xxxx.be';
sub_filter 'localhost' $host;
}
location /stream {
proxy_set_header X-Forwarded-For $client_ip;
real_ip_header X-Forwarded-For;
proxy_set_header Accept-Encoding "";
proxy_pass [url]http://192.168.1.50:8002/stream[/url];
sub_filter_types application/xspf+xml audio/x-mpegurl audio/x-vclt text/css text/html text/xml;
}
listen [::]:443 ssl ; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/radio.xxxx.be/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/radio.xxxx.be/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = radio.xxxx.be) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
listen [::]:80;
server_name radio.xxxx.be;
return 404; # managed by Certbot
}
Dernière modification par Chriss2426 (Le 10/03/2024, à 13:10)
Hors ligne
#5 Le 09/03/2024, à 23:40
- xubu1957
Re : Serveur Nginx
Bonjour,
Pour ajouter toi-même les balises code à ton précédent message #4 :
Cliquer sur le lien « Modifier » en bas à droite du message
Sélectionner le texte
Cliquer sur le <> de l'éditeur de message
comme indiqué dans le : Retour utilisable de commande
server {
server_name radio.xxx.be;
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-For $client_ip;
proxy_set_header x-real-ip $remote_addr;
proxy_set_header X-forwarded-for $proxy_add_x_forwarded_for;
proxy_set_header Accept-Encoding "";
proxy_pass http://192.168.1.50:8002;
sub_filter_types application/xspf+xml audio/x-mpegurl audio/x-vclt text/css text/html text/xml;
sub_filter '@localhost' '@radio.xxxx.be';
sub_filter 'localhost' $host;
}
location /stream {
proxy_set_header X-Forwarded-For $client_ip;
real_ip_header X-Forwarded-For;
proxy_set_header Accept-Encoding "";
proxy_pass http://192.168.1.50:8002/stream;
sub_filter_types application/xspf+xml audio/x-mpegurl audio/x-vclt text/css text/html text/xml;
}
listen [::]:443 ssl ; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/radio.xxxx.be/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/radio.xxxx.be/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = radio.xxxx.be) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
listen [::]:80;
server_name radio.xxxx.be;
return 404; # managed by Certbot
}
Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Réso|u] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci. Membre de Linux-Azur
En ligne
#6 Le 10/03/2024, à 13:22
- alex2423
Re : Serveur Nginx
Mais mon problème est toujours le même pour la webradio, j'arrive toujours avec l'ip privé du serveur nginx.
Bonjour Chriss,
Et en toute innocence, quel serait le problème ? quel est l'incidence ?
Hors ligne
#7 Le 10/03/2024, à 18:07
- Chriss2426
Re : Serveur Nginx
Bonjour Alex,
Car j'ai une plateferome qui se connecte sur le serveur pour faire du reporting et sans les ip publiques c'est assez faussé
Hors ligne
#8 Le 11/03/2024, à 22:50
- alex2423
Re : Serveur Nginx
Humm, je comprends. Oui c'est un peu problématique dans ce cas
Hors ligne
#9 Le 11/03/2024, à 23:34
- Vobul
Re : Serveur Nginx
Le format de log par défaut d'nginx ne prend pas en compte l'ip source. C'est ça ton problème. Change log_format. https://www.loadbalancer.org/blog/nginx … or-header/
Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM
Hors ligne
Pages : 1