prostasia
(Prostasia Foundation)
1
모두 안녕하세요,
nginx를 사용하여 Discourse를 Tor 은닉 서비스로 설정하고 싶습니다. 현재 nginx에서 시도 중인 구성은 다음과 같습니다(동작하지 않으며, “서버를 찾을 수 없음” 오류가 발생합니다):
server {
listen unix:/var/run/nginx-onion.sock;
server_name prostadqmwc6no3n.onion;
location / {
proxy_pass http://unix:/var/discourse/shared/standalone/nginx.http.sock:;
proxy_set_header Host $http_host;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
}
tor.conf 파일에는 다음과 같은 설정이 있습니다:
HiddenServiceDir /var/lib/tor/hidden_service/
HiddenServicePort 80 unix:/var/run/nginx-onion.sock
그리고 /var/lib/tor/hidden_service 디렉터리에는 호스트네임 및 개인 키 파일이 있습니다. Tor는 실행 중입니다.
Discourse는 클리어웹에서 설치 및 정상적으로 작동하고 있으며, /var/discourse/shared/standalone/nginx.http.sock 파일도 존재합니다.
필요하다면 이 문제를 해결하기 위해 약 1시간 정도의 작업에 대해 비용을 지불할 의향이 있습니다(아마도 제가 너무 멍청하게 접근하고 있는 것 같아서, 그 이상 걸리지는 않을 것이라 생각합니다).
pfaffman
(Jay Pfaffman)
2
prostasia
(Prostasia Foundation)
3
네, 하지만 솔직히 이게 뭔 말인지 도무지 모르겠어요. 제가 필요한 건 그냥 제대로 동작하는 nginx 설정뿐인데, 이 방식은 너무 복잡하게 느껴집니다.
해결 방법을 찾았나요?
그리고 .onion 주소에서 Discourse 자체를 토커(tor)로 어떻게 실행하셨나요? (Tor를 통해서만 접근 가능한 포럼을 만들고 싶습니다)
prostasia
(Prostasia Foundation)
5
네, 정상 작동하는 설정입니다. 문제는 꽤 단순했는데, 처음에는 소켓을 사용해 사이트를 서빙하려 했지만 작동하지 않아 결국 포트를 사용해야 했습니다.
server {
listen 801;
server_name 127.0.0.1;
location / {
proxy_pass http://unix:/var/discourse/shared/standalone/nginx.http.sock:;
proxy_set_header Host $http_host;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
}
빠른 답변 감사합니다!
한 가지 더 질문이 있는데요. 서버 사양은 어떻게 되나요(사용자 규모 기준)? / Tor를 통한 성능 향상을 위해 어떤 변경 사항을 적용했나요?
미리 감사드립니다!
prostasia
(Prostasia Foundation)
7
2GB Digital Ocean VM에 105명의 사용자가 접속하고 있습니다. 우리는 어떤 수정도 하지 않았습니다 (tor와 clearweb을 동시에 제공하도록 허용하는 플러그인 설치 제외).
또 다른 질문인데, 사용자 이미지(배경 카드, 프로필 배너 등)가 로딩되는 데 정말 오래 걸리는 문제가 있나요? (이건 tor 때문인 것 같습니다.) 일단 캐싱이 되면 정상적으로 잘 표시되긴 합니다.
Tor 사용자 주소가 어떻게 작동하는지 정확히 알지 못합니다. 제 경우 모든 로그인한 사용자의 IP가 127.0.0.1로 표시되는데, 이는 예상대로이지만 nginx에서 x-forwarded-for 헤더를 설정해 두었습니다.
Tor 네트워크 자체에서 Tor 사용자에게 IP와 유사한 것이 있는지, 그리고 이를 어떻게 표시할 수 있는지 확실하지 않습니다.
set_real_ip_from을 사용해야 할 수도 있습니다