User Tools

Site Tools


сервис_http

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
сервис_http [2020/09/01 12:01]
val [Debian/Ubuntu]
сервис_http [2022/10/06 10:01]
val [Управление доступом к HTTP серверу с использованием OAuth2 аутентификации]
Line 33: Line 33:
     <META HTTP-EQUIV="​Content-Type"​ CONTENT="​text/​html;​charset=UTF-8">​     <META HTTP-EQUIV="​Content-Type"​ CONTENT="​text/​html;​charset=UTF-8">​
   </​HEAD>​   </​HEAD>​
-  <​BODY>​+  <​BODY ​text="​blue"​>
     <!--     <!--
       THis is comment       THis is comment
     -->     -->
 +    <PRE>
 +text
 +  as
 +    is
 +    </​PRE>​
     <​H1>​Go to Google</​H1>​     <​H1>​Go to Google</​H1>​
-    <A HREF=http://​freebsd.org/>​ +    <A HREF=https://​freebsd.org/>​ 
-    <IMG SRC=http://​www.freebsd.org/​logo/​logo-full.png>​+    <IMG SRC=https://​www.freebsd.org/​logo/​logo-full.png>​
     </​A> ​     </​A> ​
   </​BODY>​   </​BODY>​
Line 106: Line 111:
 </​code>​ </​code>​
  
 +==== Изменение порта ====
 +
 +  * [[https://​www.tecmint.com/​change-apache-port-in-linux/​|How to Change Apache HTTP Port in Linux]]
 ==== Свойство Indexes каталогов ==== ==== Свойство Indexes каталогов ====
  
Line 216: Line 224:
  
 ==== Debian/​Ubuntu ==== ==== Debian/​Ubuntu ====
 +
 +<​code>​
 +root@server:​~#​ cat /​etc/​apache2/​sites-available/​mail.conf
 +</​code><​code>​
 +<​VirtualHost *:80>
 +     ​ServerName mail.corpX.un
 +#    ServerAlias www.mail.corpX.un
 +     ​DocumentRoot /​var/​lib/​roundcube
 +</​VirtualHost>​
 +</​code><​code>​
 +root@server:​~#​ a2ensite mail
 +
 +root@server:​~#​ apachectl -t
 +</​code>​
 +
 <​code>​ <​code>​
 root@server:​~#​ cat /​etc/​apache2/​sites-available/​user1.conf root@server:​~#​ cat /​etc/​apache2/​sites-available/​user1.conf
Line 225: Line 248:
 </​VirtualHost>​ </​VirtualHost>​
 </​code><​code>​ </​code><​code>​
-root@server:​~#​ apachectl -t 
- 
 root@server:​~#​ a2ensite user1 root@server:​~#​ a2ensite user1
 +
 +root@server:​~#​ apachectl -t
 </​code>​ </​code>​
  
Line 534: Line 557:
 </​code>​ </​code>​
  
 +==== Редирект HTTP на HTTPS ====
 +<​code>​
 +# a2enmod rewrite
 +
 +# cat /​etc/​apache2/​sites-available/​000-default.conf
 +</​code><​code>​
 +<​VirtualHost *:80>
 +...
 +    RewriteEngine On
 +    RewriteCond %{HTTPS} off
 +    RewriteRule (.*) https://​%{HTTP_HOST}%{REQUEST_URI}
 +...
 +</​code><​code>​
 +# service apache2 restart
 +</​code>​
 ==== FreeBSD ==== ==== FreeBSD ====
 <​code>​ <​code>​
Line 628: Line 666:
 </​code><​code>​ </​code><​code>​
 ... ...
-        <​Directory /​var/​www/​html/​asterisk>+        <​Directory /​var/​www/​html/​phoneconf>
 #            AllowOverride AuthConfig #            AllowOverride AuthConfig
  
Line 775: Line 813:
  
 [[http://​grolmsnet.de/​kerbtut/​firefox.html]] [[http://​grolmsnet.de/​kerbtut/​firefox.html]]
 +
 +==== Управление доступом к HTTP серверу с использованием OAuth2 аутентификации ====
 +
 +  * [[https://​github.com/​zmartzone/​mod_auth_openidc/​wiki/​GitLab-OAuth2]]
 +  * [[Инструмент GitLab#​Сервер OAuth2]] из GitLab
 +
 +<​code>​
 +gate# apt install libapache2-mod-auth-openidc
 +</​code><​code>​
 +gate# cat /​etc/​apache2/​sites-available/​000-default.conf
 +</​code><​code>​
 +...
 +        OIDCSSLValidateServer Off
 +        OIDCProviderMetadataURL https://​server.corp13.un/​.well-known/​openid-configuration
 +        OIDCRedirectURI http://​gate.corp13.un/​cgi-bin/​test-cgi
 +        OIDCClientID e...............................................4
 +        OIDCClientSecret 7.................................................4
 +        OIDCCryptoPassphrase anystring
 +...
 +</​code><​code>​
 +# cat /​etc/​apache2/​conf-available/​serve-cgi-bin.conf
 +</​code><​code>​
 +...
 +                        #Require all granted
 +                        AuthType openid-connect
 +                        Require valid-user
 +...
 +</​code><​code>​
 +Проверка:​ http://​gate.corp13.un/​cgi-bin/​test-cgi/ ​   !!! Последний / обязательно !!!
 +</​code>​
  
 ===== Протокол WebDAV ===== ===== Протокол WebDAV =====
Line 813: Line 881:
 <​code>​ <​code>​
 gate# apt install nginx gate# apt install nginx
 +</​code>​ 
 +==== Прокси "​красивого"​ URL в приложение (пример 1) ==== 
 +<​code>​
 gate# cat /​etc/​nginx/​sites-available/​user1 gate# cat /​etc/​nginx/​sites-available/​user1
 </​code><​code>​ </​code><​code>​
 server { server {
         listen 80;         listen 80;
-        server_name server.corp13.un corp13.un;+        server_name server.corpX.un corpX.un;
         location / {         location / {
-                proxy_pass http://​server.corp13.un/​~user1/;​+                proxy_pass http://​server.corpX.un/​~user1/;​
         }         }
 } }
Line 829: Line 899:
  
 # tail /​var/​log/​nginx/​error.log # tail /​var/​log/​nginx/​error.log
 +  или
 +# nginx -t -c /​etc/​nginx/​nginx.conf
  
 # service nginx restart # service nginx restart
 </​code><​code>​ </​code><​code>​
 gate.isp.un$ wget -O - -q http://​server.corpX.un gate.isp.un$ wget -O - -q http://​server.corpX.un
 +</​code>​
 +
 +==== Прокси с балансировкой (пример 2) ====
 +
 +<​code>​
 +# cat /​etc/​nginx/​sites-available/​myapp1
 +</​code><​code>​
 +    upstream myapp1 {
 +        server server.corpX.un;​
 +        server server2.corpX.un;​
 +    }
 +
 +    server {
 +        listen 80;
 +        server_name server.corpX.un corpX.un;
 +
 +        location / {
 +            proxy_pass http://​myapp1;​
 +        }
 +    }
 +</​code><​code>​
 +# ln -s /​etc/​nginx/​sites-available/​myapp1 /​etc/​nginx/​sites-enabled/​myapp1
 +</​code>​
 +
 +==== Прокси "​красивого"​ URL в приложение (пример 3) ====
 +
 +<​code>​
 +# host mail
 +mail.corpX.un is an alias for server.corpX.un.
 +server.corpX.un has address 192.168.X.10
 +
 +# host webd
 +webd.corpX.un has address 192.168.X.10
 +
 +root@server#​ cat /​var/​opt/​gitlab/​nginx/​conf/​my.conf
 +</​code><​code>​
 +    server {
 +        listen 80;
 +        server_name webd.corpX.un;​
 +
 +        location / {
 +            proxy_pass http://​192.168.49.2:​30111/;​
 +        }
 +    }
 +    server {
 +        listen 80;
 +        server_name mail.corpX.un;​
 +
 +        location / {
 +            proxy_pass http://​server.corpX.un:​81/​mail/;​
 +        }
 +    }
 +</​code><​code>​
 +root@server#​ cat /​var/​opt/​gitlab/​nginx/​conf/​nginx.conf
 +</​code><​code>​
 +...
 +  include /​var/​opt/​gitlab/​nginx/​conf/​my.conf;​
 +}
 +</​code><​code>​
 +root@server#​ /​opt/​gitlab/​embedded/​sbin/​nginx -p /​var/​opt/​gitlab/​nginx -t
 +</​code><​code>​
 +root@server#​ gitlab-ctl restart nginx
 </​code>​ </​code>​
сервис_http.txt · Last modified: 2024/03/18 08:41 by val