about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMIYAGI Hikaru <hcmiya@users.noreply.github.com>2018-06-29 22:36:02 +0900
committerEugen Rochko <eugen@zeonfederated.com>2018-06-29 15:36:02 +0200
commitddd0bb69e1d9ea98a0ea30717e9f25bcd50b41a3 (patch)
tree6f4369d30ccd172d7c4de997cc3aba621c781f1f
parentcdb101340a20183a82889f811d9311c370c855e5 (diff)
Merge `HIDDEN_SERVICE_VIA_TRANSPARENT_PROXY` into `ALLOW_ACCESS_TO_HIDDEN_SERVICE` (#7901)
If Mastodon accesses to the hidden service via transparent proxy, it's needed to avoid checking whether it's a private address, since `.onion` is resolved to a private address.
I was previously using the `HIDDEN_SERVICE_VIA_TRANSPARENT_PROXY` to provide that function. However, I realized that using `HIDDEN_SERVICE_VIA_TRANSPARENT_PROXY` is redundant, since this specification is always used with `ALLOW_ACCESS_TO_HIDDEN_SERVICE`. Therefore, I decided to integrate the setting of `HIDDEN_SERVICE_VIA_TRANSPARENT_PROXY` into` ALLOW_ACCESS_TO_HIDDEN_SERVICE`.
-rw-r--r--.env.production.sample2
-rw-r--r--app/lib/request.rb2
-rw-r--r--config/initializers/http_client_proxy.rb1
-rw-r--r--docker-compose.yml1
4 files changed, 1 insertions, 5 deletions
diff --git a/.env.production.sample b/.env.production.sample
index 3047f7595..ebb078878 100644
--- a/.env.production.sample
+++ b/.env.production.sample
@@ -229,5 +229,3 @@ STREAMING_CLUSTER_NUM=1
 # http_proxy=http://gateway.local:8118
 # Access control for hidden service.
 # ALLOW_ACCESS_TO_HIDDEN_SERVICE=true
-# If you use transparent proxy to access to hidden service, uncomment following for skipping private address check.
-# HIDDEN_SERVICE_VIA_TRANSPARENT_PROXY=true
diff --git a/app/lib/request.rb b/app/lib/request.rb
index 397614fac..576ed23ca 100644
--- a/app/lib/request.rb
+++ b/app/lib/request.rb
@@ -154,7 +154,7 @@ class Request
       alias new open
 
       def thru_hidden_service?(host)
-        Rails.configuration.x.hidden_service_via_transparent_proxy && /\.(onion|i2p)$/.match(host)
+        Rails.configuration.x.access_to_hidden_service && /\.(onion|i2p)$/.match(host)
       end
     end
   end
diff --git a/config/initializers/http_client_proxy.rb b/config/initializers/http_client_proxy.rb
index 52c595c5d..e607aff3c 100644
--- a/config/initializers/http_client_proxy.rb
+++ b/config/initializers/http_client_proxy.rb
@@ -11,7 +11,6 @@ Rails.application.configure do
   end
 
   config.x.access_to_hidden_service = ENV['ALLOW_ACCESS_TO_HIDDEN_SERVICE'] == 'true'
-  config.x.hidden_service_via_transparent_proxy = ENV['HIDDEN_SERVICE_VIA_TRANSPARENT_PROXY'] == 'true'
 end
 
 module Goldfinger
diff --git a/docker-compose.yml b/docker-compose.yml
index b31095a54..c54c73e44 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -83,7 +83,6 @@ services:
 ## Uncomment to enable federation with tor instances along with adding the following ENV variables
 ## http_proxy=http://privoxy:8118
 ## ALLOW_ACCESS_TO_HIDDEN_SERVICE=true
-## HIDDEN_SERVICE_VIA_TRANSPARENT_PROXY=true
 #  tor:
 #    build: https://github.com/usbsnowcrash/docker-tor.git
 #    networks: