cable.conf 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. ###
  2. ### Apache configuration file for Signal-Server
  3. ###
  4. ### VirtualHost for the main service:
  5. <VirtualHost *:443>
  6. ServerName cable-service.cable.im
  7. SSLEngine On
  8. # Per il servizio Signal vero e proprio usiamo invece il certificato self-signed.
  9. # Nel keystore del'app Android è il root certificate della nostra CA, assicurando
  10. # così che l'app riconosca come validi solo i certificati emessi dalla nostra CA.
  11. SSLCertificateFile /home/cable/certificati/whisper.crt
  12. SSLCertificateKeyFile /home/cable/certificati/whisper.key
  13. Include /etc/letsencrypt/options-ssl-apache.conf
  14. #SSLCertificateChainFile /home/cable/certificati/whisper.crt
  15. # Per proxare websocket (ws://) serve questa roba:
  16. #
  17. # https://httpd.apache.org/docs/2.4/mod/mod_proxy_wstunnel.html
  18. ProxyVia On
  19. ProxyPreserveHost On
  20. ProxyPass / ws://127.0.0.1:4242/
  21. ProxyPassReverse / ws://127.0.0.1:4242/
  22. </VirtualHost>
  23. ### VirtualHost for letting Twilio call back:
  24. <VirtualHost *:443>
  25. ServerName cable-service-ca.cable.im
  26. SSLEngine On
  27. # Su cable-service-ca.cable.im serve un certificato valido (letsencrypt).
  28. # È l'hostname a cui si connette Twilio per ottenere le informazioni
  29. # necessarie a fare la verifica del numero tramite chiamata vocale.
  30. SSLCertificateFile /etc/letsencrypt/live/cable-service-ca.cable.im/cert.pem
  31. SSLCertificateKeyFile /etc/letsencrypt/live/cable-service-ca.cable.im/privkey.pem
  32. Include /etc/letsencrypt/options-ssl-apache.conf
  33. SSLCertificateChainFile /etc/letsencrypt/live/cable-service-ca.cable.im/chain.pem
  34. ProxyVia On
  35. ProxyPreserveHost On
  36. ProxyPass / http://127.0.0.1:4242/
  37. ProxyPassReverse / http://127.0.0.1:4242/
  38. </VirtualHost>
  39. ### Giphy proxy:
  40. <VirtualHost *:80>
  41. ServerName giphy.com
  42. ServerAlias *.giphy.com
  43. ProxyRequests On
  44. # The AllowConnect directive specifies a list of ports
  45. # to which the proxy CONNECT method may connect.
  46. AllowConnect 443
  47. # Only allow HTTP CONNECT requests, denying the others (GET, POST, ...).
  48. <Location />
  49. Require method CONNECT
  50. </Location>
  51. # This <Proxy *> block is not really needed, but let's leave it.
  52. <Proxy *>
  53. # New syntax, see https://httpd.apache.org/docs/2.4/upgrading.html
  54. # Can't be mixed with the old "Order" and "Allow" stuff, so we stay
  55. # with the old syntax for now...
  56. #Require all denied
  57. Order deny,allow
  58. Deny from all
  59. </Proxy>
  60. <Proxy "*.giphy.com:443">
  61. #Require all granted
  62. Order allow,deny
  63. Allow from all
  64. </Proxy>
  65. </VirtualHost>
  66. ### Adminer (adminer.org):
  67. <VirtualHost *:443>
  68. ServerName db.cable.im
  69. SSLEngine On
  70. SSLCertificateFile /etc/letsencrypt/live/db.cable.im/cert.pem
  71. SSLCertificateKeyFile /etc/letsencrypt/live/db.cable.im/privkey.pem
  72. Include /etc/letsencrypt/options-ssl-apache.conf
  73. SSLCertificateChainFile /etc/letsencrypt/live/db.cable.im/chain.pem
  74. DocumentRoot "/var/www/adminer/"
  75. <Directory />
  76. AuthType Basic
  77. AuthUserFile "/var/www/adminer/.htpasswd"
  78. AuthName "Adminer"
  79. Require valid-user
  80. </Directory>
  81. <Files ".*">
  82. #Require all denied
  83. Order deny,allow
  84. Deny from all
  85. </Files>
  86. </VirtualHost>