리눅스에서 가상화 서버로 포트포워딩과 서비스 연결

좀더 빡세게 서버를 돌리기 위해 리눅스 서버 위에 윈도우 2008 서버를 가상화로 설치하여 사용 중이다.

문제는 이 리눅스 서버에는 이미 다양한 서버가 설치되어 있었는데 그중에는 웹서버도 포함되어 있었다. 또한 수십여개의 도메인도 연결되어 있었다. 기존에 사용하던 IP, 도메인 등은 그대로 둔채 특정 도메인이나 특정 포트만 가상화 서버로 연결해주려면 다음과 같이 한다.

<특정 포트만 가상화 서버로 포트포워딩하여 연결하고 싶은 경우>

iptables를 이용한다. 내 서버의 경우에는 윈도우 2008 가상화 서버에 192.168.122.95 라는 아이피가 부여되어 있었다.

<특정 도메인만 가상화 서버로 연결하고 싶은 경우>

이건 꽤 문제가 되는데 내 경우에는 HTTP 웹서비스를 담당하는 80번포트만 윈도우 서버에 따로 연결하고 싶었다.

아파치 서버의 conf 파일에서 Virtual Host를 하나 만들고 Server Name으로 원하는 도메인을 적은 다음과 같이 ProxyPass를 잡아준다.

ProxyPass / http://192.168.122.95/
ProxyPassReverse / http://192.168.122.95/

이렇게 하면 일단 해당 도메인으로 오는 요청을 리눅스 서버의 아파치 서버가 받은 다음 프록시 모듈을 이용해서 윈도우 서버로 통신을 넘겨준다.

2 Replies to “리눅스에서 가상화 서버로 포트포워딩과 서비스 연결”

  1. 안녕하세요. 오랜만에 인사드립니다.

    라이트세일 접속하면 패널에서 자체적으로 방화적을 제공해 주는데요~
    VPN Server 구축할때 iptables을 설정할 일이 있는데 그 두개가 충돌을 일으키지는 않는지요?

    1. 알림메일이 스팸메일함에 들어가는 바람에 이제서야 리플을 봤습니다.

      개인적으로는 라이트세일에 있는 포트제어만을 사용하고 리눅스 위에서의 firewalld나 iptables는 끄고 사용하고 있습니다. 그렇게 쓰는 이유는 아마존에서 제공하는게 훨씬 다루기가 편리해서요. 🙂

      그런데 같이 쓴다고 해서 둘이 충돌을 일으킬게 있을까 싶네요. 두개 같이 써도 아무 상관 없을겁니다.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.