ECS: 로드 밸런서를 사용하여 ECS에 대해 "X-Forwarded-For"를 구성하는 방법
Summary: 아래에 제공된 단계는 ECS 내에서 "X-Forwarded-For"를 활성화하므로 로드 밸런서가 원래 IP 주소를 통과하도록 구성된 경우 ECS는 로그 파일에서도 이를 캡처합니다.
Instructions
ECS에서 F5의 Big IP와 같은 로드 밸런서를 사용하는 경우 ECS 로그 파일에 표시되도록 원래 IP 주소를 전달할 수 있습니다.
참고: 이 기능은 로드 밸런서에서 "X-Forwarded-For"가 활성화된 경우에만 작동합니다. (자세한 내용은 아래 참조)*.
ECS 내에서 X-Forwarded-For를 활성화하는 단계입니다.
1. 관리자로 ECS 노드에 대한 Secure Shell을 실행합니다.
2. 다음 명령을 실행하여 매개 변수가 이전에 설정되었는지 확인합니다.
명령: #svc_param info com.emc.ecs.objheadsvc.request_log.headers
예 1: 이전에 설정한 적이 없는 경우 아래 출력을 참조하십시오.
admin@ecsnode1:~> svc_param info com.emc.ecs.objheadsvc.request_log.headers
svc_param v1.2.2 (svc_tools v2.11.1) Started 2023-07-31 18:13:45
Param: com.emc.ecs.objheadsvc.request_log.headers
Description comma sep list of headers to log
Default value (active)
Configured Value < Never modified >
Modification reason None
Last modified None
예 2: 아래 샘플은 매개 변수가 이전에 설정되었음을 나타냅니다.
admin@ecsnode1:~> svc_param info com.emc.ecs.objheadsvc.request_log.headers
svc_param v1.2.2 (svc_tools v2.11.1) Started 2023-07-31 18:15:05
WARNING Could not get REST auth token from IP '127.0.0.1' - Connection failed
Param: com.emc.ecs.objheadsvc.request_log.headers
Description comma sep list of headers to log
Default value
Configured Value (active) X-Forwarded-For
Modification reason log request source ip address
Last modified 2023-07-31 18:14:32 UTC (1690827272918)
3. 다음 명령을 실행하여 X-Forwarded-For를 활성화합니다.
명령: #svc_param set -n com.emc.ecs.objheadsvc.request_log.headers -v "X-Forwarded-For" -r "log request source ip address"
예: 매개 변수 변경
admin@ecsnode1:~> svc_param set -n com.emc.ecs.objheadsvc.request_log.headers -v "X-Forwarded-For" -r "log request source ip address"
svc_param v1.2.2 (svc_tools v2.11.1) Started 2023-07-31 18:14:32
Param value changed.
Param: com.emc.ecs.objheadsvc.request_log.headers
Description comma sep list of headers to log
Default value
Configured Value (active) X-Forwarded-For
Modification reason log request source ip address
Last modified 2023-07-31 18:14:32 UTC (1690827272918)
4. 명령 설정이 설정되었는지 확인하려면 다음 명령을 실행합니다.
admin@ecsnode1:~> svc_param info com.emc.ecs.objheadsvc.request_log.headers
svc_param v1.2.2 (svc_tools v2.11.1) Started 2023-07-31 18:15:05
Param: com.emc.ecs.objheadsvc.request_log.headers
Description comma sep list of headers to log
Default value
Configured Value (active) X-Forwarded-For
Modification reason log request source ip address
Last modified 2023-07-31 18:14:32 UTC (1690827272918)
참고:
- 구성 변경은 하나의 노드에서만 실행해야 합니다. 즉시 적용되어야 합니다.
- 서비스를 다시 시작할 필요가 없습니다.
- 이 매개변수를 설정해도 미치는 영향은 없습니다
- 전달이 작동하는지 확인하려면 dataheadsvc.log에서 dataheadsvc.log 파일 RequestLog.java 확인하십시오.
#svc_log -f 'X-Forwarded-For' -sr dataheadsvc-access -start 10m
예: 전달된 클라이언트 IP를 포함하는 하나의 샘플 로그 라인입니다.
2017-03-13T14:57:38,591 [qtp947043383-731114] INFO RequestLog.java (line 83) 10.XXX.134.55 GET //10.XXX.134.55:9024/v1/9f2f0506dc2748ba98b52904ca44f89a?format=json▮=test-storage-16228-255 HTTP/1.0 200 865 - 3 'X-Forwarded-For: 10.XXX.134.56'
로드 밸런서 세부 정보:
이 기능은 로드 밸런서가 올바르게 구성된 경우에만 작동합니다.
F5 BigIP는 실험실에서 테스트되었습니다.
예를 들어 F5 BigIP 로드 밸런서의 경우ProxyPreserveHost를 설정하고 HTTP 프로필에서 x-forwarded-for를 사용하도록 설정해야 합니다.
다음 링크는 F5 BIG-IP를 구성하는 방법에 대한 검토를 위해 제공됩니다.https://support.f5.com/csp/article/K4816