Matrix Docker Ansible eploy
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

125 regels
4.4 KiB

  1. # This is a sample file demonstrating how to set up reverse-proxy for matrix.DOMAIN
  2. <VirtualHost *:80>
  3. ServerName matrix.DOMAIN
  4. ProxyVia On
  5. # Map /.well-known/acme-challenge to the certbot server
  6. # If you manage SSL certificates by yourself, this will differ.
  7. <Location /.well-known/acme-challenge>
  8. ProxyPreserveHost On
  9. ProxyPass http://127.0.0.1:2402/.well-known/acme-challenge
  10. </Location>
  11. Redirect permanent / https://matrix.DOMAIN/
  12. </VirtualHost>
  13. # Client-Server API
  14. <VirtualHost *:443>
  15. ServerName matrix.DOMAIN
  16. SSLEngine On
  17. # If you manage SSL certificates by yourself, these paths will differ.
  18. SSLCertificateFile /matrix/ssl/config/live/matrix.DOMAIN/fullchain.pem
  19. SSLCertificateKeyFile /matrix/ssl/config/live/matrix.DOMAIN/privkey.pem
  20. SSLProxyEngine on
  21. SSLProxyProtocol +TLSv1.2 +TLSv1.3
  22. SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
  23. ProxyPreserveHost On
  24. ProxyRequests Off
  25. ProxyVia On
  26. # Keep some URIs free for different proxy/location
  27. ProxyPassMatch ^/.well-known/matrix/client !
  28. ProxyPassMatch ^/.well-known/matrix/server !
  29. ProxyPassMatch ^/_matrix/identity !
  30. ProxyPassMatch ^/_matrix/client/r0/user_directory/search !
  31. # Proxy all remaining traffic to Synapse
  32. AllowEncodedSlashes NoDecode
  33. ProxyPass /_matrix http://127.0.0.1:8008/_matrix retry=0 nocanon
  34. ProxyPassReverse /_matrix http://127.0.0.1:8008/_matrix
  35. ProxyPass /_synapse/client http://127.0.0.1:8008/_synapse/client retry=0 nocanon
  36. ProxyPassReverse /_synapse/client http://127.0.0.1:8008/_synapse/client
  37. # Map /.well-known/matrix/client for client discovery
  38. Alias /.well-known/matrix/client /matrix/static-files/.well-known/matrix/client
  39. <Files "/matrix/static-files/.well-known/matrix/client">
  40. Require all granted
  41. </Files>
  42. <Location "/.well-known/matrix/client">
  43. Header always set Content-Type "application/json"
  44. Header always set Access-Control-Allow-Origin "*"
  45. </Location>
  46. # Map /.well-known/matrix/server for server discovery
  47. Alias /.well-known/matrix/server /matrix/static-files/.well-known/matrix/server
  48. <Files "/matrix/static-files/.well-known/matrix/server">
  49. Require all granted
  50. </Files>
  51. <Location "/.well-known/matrix/server">
  52. Header always set Content-Type "application/json"
  53. </Location>
  54. <Directory /matrix/static-files/.well-known/matrix/>
  55. AllowOverride All
  56. # Apache 2.4:
  57. Require all granted
  58. # Or for Apache 2.2:
  59. #order allow,deny
  60. </Directory>
  61. # Map /_matrix/identity to the identity server
  62. <Location /_matrix/identity>
  63. ProxyPass http://127.0.0.1:8090/_matrix/identity nocanon
  64. </Location>
  65. # Map /_matrix/client/r0/user_directory/search to the identity server
  66. <Location /_matrix/client/r0/user_directory/search>
  67. ProxyPass http://127.0.0.1:8090/_matrix/client/r0/user_directory/search nocanon
  68. </Location>
  69. ErrorLog ${APACHE_LOG_DIR}/matrix.DOMAIN-error.log
  70. CustomLog ${APACHE_LOG_DIR}/matrix.DOMAIN-access.log combined
  71. </VirtualHost>
  72. # Server-Server (federation) API
  73. # Use this apache reverse proxy template to enable matrix server-to-server federation traffic
  74. # Be sure that network traffic on port 8448 is possible
  75. #
  76. # You can check your federation config at https://federationtester.matrix.org/
  77. # Enter there your base DOMAIN address, NOT your matrix.DOMAIN address, ex. https://DOMAIN
  78. #
  79. # In this example we use all services on the same machine (127.0.0.1) but you can do this with different machines.
  80. # If you do so be sure to reach the destinated IPADRESS and the correspondending port. Check this with netstat, nmap or your favourite tool.
  81. Listen 8448
  82. <VirtualHost *:8448>
  83. ServerName matrix.DOMAIN
  84. SSLEngine On
  85. # If you manage SSL certificates by yourself, these paths will differ.
  86. SSLCertificateFile /matrix/ssl/config/live/matrix.DOMAIN/fullchain.pem
  87. SSLCertificateKeyFile /matrix/ssl/config/live/matrix.DOMAIN/privkey.pem
  88. SSLProxyEngine on
  89. SSLProxyProtocol +TLSv1.2 +TLSv1.3
  90. SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
  91. ProxyPreserveHost On
  92. ProxyRequests Off
  93. ProxyVia On
  94. # Proxy all remaining traffic to the Synapse port
  95. # Beware: In this example the local traffic goes to the local synapse server at 127.0.0.1
  96. # Of course you can use another IPADRESS in case of using other synapse servers in your network
  97. AllowEncodedSlashes NoDecode
  98. ProxyPass /_matrix http://127.0.0.1:8048/_matrix retry=0 nocanon
  99. ProxyPassReverse /_matrix http://127.0.0.1:8048/_matrix
  100. ErrorLog ${APACHE_LOG_DIR}/matrix.DOMAIN-error.log
  101. CustomLog ${APACHE_LOG_DIR}/matrix.DOMAIN-access.log combined
  102. </VirtualHost>