ports:nginx

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
ports:nginx [2022/03/08 20:52] – [Filtres] davidports:nginx [2023/06/03 22:26] (Version actuelle) – [Chiffrement] david
Ligne 17: Ligne 17:
 C'est une interface non-bloquante pour écouter les sockets(2) plus performantes que les ancêtres poll(2) ou select(2). C'est une interface non-bloquante pour écouter les sockets(2) plus performantes que les ancêtres poll(2) ou select(2).
  
-<file javascript /usr/local/etc/nginx/nginx.conf>+<file nginx /usr/local/etc/nginx/nginx.conf>
 events { events {
         worker_connections  1024;         worker_connections  1024;
Ligne 35: Ligne 35:
  
   * Autorisez les Entrée/Sorties asynchrones, aio(4) et sendfile(2):   * Autorisez les Entrée/Sorties asynchrones, aio(4) et sendfile(2):
-<file javascript /usr/local/etc/nginx/nginx.conf>+<file nginx /usr/local/etc/nginx/nginx.conf>
 http { http {
         sendfile        on;         sendfile        on;
         aio            on;         aio            on;
- 
 } }
 </file> </file>
Ligne 45: Ligne 44:
   * activez l'option ''TCP_NOPUSH'' des sockets de FreeBSD, pour éviter de pousser de trop petits paquets dans le réseau:   * activez l'option ''TCP_NOPUSH'' des sockets de FreeBSD, pour éviter de pousser de trop petits paquets dans le réseau:
  
-<file javascript /usr/local/etc/nginx/nginx.conf>+<file nginx /usr/local/etc/nginx/nginx.conf>
 http { http {
         tcp_nopush     on;         tcp_nopush     on;
-        output_buffers   1 32k; 
-        postpone_output  1460; 
 } }
 </file> </file>
Ligne 59: Ligne 56:
 En particulier la directive ''listen'', qui permet de paramétrer une socket en utilisant par exemple ''http2'' sur ''ssl''. En particulier la directive ''listen'', qui permet de paramétrer une socket en utilisant par exemple ''http2'' sur ''ssl''.
  
-<file javascript /usr/local/etc/nginx/nginx.conf>+<file nginx /usr/local/etc/nginx/nginx.conf>
 server { server {
                 listen [::]:443 ssl http2;                 listen [::]:443 ssl http2;
Ligne 69: Ligne 66:
 Attention, comme toutes les directives qui sont des options appliquées aux sockets, elles ne sont valides et acceptées qu'une seule fois, c'est à dire pour un seul couple //adresse:port//. Attention, comme toutes les directives qui sont des options appliquées aux sockets, elles ne sont valides et acceptées qu'une seule fois, c'est à dire pour un seul couple //adresse:port//.
 </note> </note>
 +
 +=== Filtres ===
 +
 +Le noyau de FreeBSD permet de définir des [[https://www.freebsd.org/cgi/man.cgi?accf_http|filtres]] qui vont vérifier le contenu du flux avant de la passer à une //socket//.
 +
 +''Nginx'' comprend ''accept_filter=httpready'' et ''accept_filter=dataready''. Assuez vous d'avoir activé les options suivantes dans le noyau:
 +
 +  - ACCEPT_FILTER_HTTP
 +  - ACCEPT_FILTER_DATA
 +
 +Ou de charger les modules:
 +
 +  - accf_http
 +  - accf_data
 +
 +Pour pouvoir définir ces filtres derrière la directive ''listen''.
 +
  
 === Fast open === === Fast open ===
Ligne 80: Ligne 94:
 Ajoutez le à une directive ''listen'': Ajoutez le à une directive ''listen'':
  
-<file javascript /usr/local/etc/nginx/nginx.conf>+<file nginx /usr/local/etc/nginx/nginx.conf>
 server { server {
                 listen [::]:443 ssl http2 fastopen=256;                 listen [::]:443 ssl http2 fastopen=256;
Ligne 98: Ligne 112:
 Par exemple, pour rejeter d'office les requêtes louches: Par exemple, pour rejeter d'office les requêtes louches:
  
-<file javascript /usr/local/etc/nginx/drop.conf>+<file nginx /usr/local/etc/nginx/drop.conf>
  
 location = /robots.txt  { access_log off; log_not_found off; } location = /robots.txt  { access_log off; log_not_found off; }
Ligne 109: Ligne 123:
 Il suffit ensemble de le préciser dans les serveurs concernés: Il suffit ensemble de le préciser dans les serveurs concernés:
  
-<file javascript /usr/local/etc/nginx/nginx.conf>+<file nginx /usr/local/etc/nginx/nginx.conf>
  server {  server {
                 listen [::]:80 ;                 listen [::]:80 ;
Ligne 122: Ligne 136:
 Vous pouvez de la même manière mettre la configuration d'un serveur dans un fichier à part. Vous pouvez de la même manière mettre la configuration d'un serveur dans un fichier à part.
  
-===== SSH =====+===== Chiffrement =====
  
 Lorsque vous voulez fournir le [[http://nginx.org/en/docs/http/configuring_https_servers.html|protocole HTTPS]], outre le chiffrement en lui même,vous allez devoir demander des certificats à une autorité de certification. Lorsque vous voulez fournir le [[http://nginx.org/en/docs/http/configuring_https_servers.html|protocole HTTPS]], outre le chiffrement en lui même,vous allez devoir demander des certificats à une autorité de certification.
Ligne 128: Ligne 142:
 Un outil de certification dédié à //Nginx// existe pour cela, [[https://www.freshports.org/security/py-certbot-nginx|certbot-nginx]]. Un outil de certification dédié à //Nginx// existe pour cela, [[https://www.freshports.org/security/py-certbot-nginx|certbot-nginx]].
  
-Par contre, pour certains service, il vous faudra un chiffrement plus solide, voici ceux conseillés par [[https://wiki.mozilla.org/Security/Server_Side_TLS|Mozilla]]:+Par contre, pour certains services, il vous faudra un chiffrement plus solide, voici ceux conseillés par [[https://wiki.mozilla.org/Security/Server_Side_TLS|Mozilla]]:
  
 <code bash> <code bash>
-root@popeye:/#openssl dhparam -out /usr/local/etc/nginx/dhparam.pem 2048+openssl dhparam -out /usr/local/etc/nginx/dhparam.pem 2048
 </code> </code>
  
 Que vous allez donner à votre serveur virtuel: Que vous allez donner à votre serveur virtuel:
  
-<file bash /usr/local/etc/nginx.conf>+<file nginx /usr/local/etc/nginx.conf>
 server { server {
  ssl_dhparam /usr/local/etc/nginx/dhparam.pem;  ssl_dhparam /usr/local/etc/nginx/dhparam.pem;
  • ports/nginx.1646772764.txt.gz
  • Dernière modification : 2022/03/08 20:52
  • de david