Elastic Load Balancing(ELB)을 사용할 때 내 클라이언트 IP 주소가 무엇인지 알고 싶습니다. 로드 밸런서가 적용되는 클라이언트의 퍼블릭 IP 주소를 로깅하도록 Ubuntu 16.04 인스턴스에서 실행되는 Apache 서버를 구성하려면 어떻게 해야 합니까?

다음 지침에 따라 Apache2 Web Server를 구성할 수 있습니다.

1. Apache2를 Ubuntu 16.04 인스턴스에 설치합니다.

sudo apt-get install apache2 -y

2. Ubuntu 인스턴스에 mod_remoteip를 설치합니다.

sudo a2enmod remoteip

3. Apache2를 다시 시작하여 구성을 활성화합니다.

sudo service apache2 restart

4. Ubuntu에 대해 /etc/apache2/apache2.conf에 위치한 Apache 구성을 다음과 같이 편집합니다.

sudo vim /etc/apache2/apache2.conf

        구성 파일에 이 행을 추가합니다.

RemoteIPHeader X-Forwarded-For

        LogFormat으로 시작하는 일치하는 섹션을 찾습니다. 변경할 행:

LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined

        다음과 같이 변경: (구성 파일에서 %h를 %a로 변경)

LogFormat "%a %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined

5. 변경을 적용하려면 구성 파일을 저장한 후 Ubuntu 인스턴스에서 Apache2를 다시 시작합니다.

sudo systemctl restart apache2.service

6. Ubuntu 인스턴스에서 이 명령을 사용하여 클라이언트 IP 로깅이 시작되는지 확인하고 다음과 같이 다른 인스턴스에서 요청합니다.

tail -f /var/log/apache2/access.log

        다른 클라이언트 머신/인스턴스에서 요청:

curl -vo /dev/null http://<elb_dns_name>

7. 클라이언트 퍼블릭 IP 또는 탄력적인 IP가 access.log 파일에 표시되는지 확인합니다.


페이지 내용이 도움이 되었습니까? | 아니요

AWS 지원 지식 센터로 돌아가기

도움이 필요하십니까? AWS 지원 센터를 방문하십시오.

게시된 날짜: 2016년 12월 7일

업데이트된 날짜: 2018년 4월 25일