OpenVOS는 RAID 및 SAN 디스크 어레이를 비롯한 여러 장치를 모니터링하기 위해 유지보수 네트워크를 사용합니다. 또한 이 네트워크를 통해 구성 변경, 문제 해결 및 일반적인 모니터링 작업을 수행할 수 있습니다. 하지만 OpenVOS 모듈에서 이러한 장치에 액세스할 때는 명령줄 인터페이스(CLI)만 사용할 수 있으며, 웹 브라우저를 통해 사용하는 보다 편리한 그래픽 사용자 인터페이스(GUI)는 사용할 수 없습니다.
GUI 인터페이스가 없기 때문에 일부 사용자들은 유지보수 네트워크를 외부에서 접근 가능한 다른 네트워크에 연결하기도 했습니다. 이 경우 네트워크상의 모든 장치와 Stratus 인터페이스의 IP 주소를 재할당해야 합니다. 또한 이는 유지보수 네트워크상의 장치에 네트워크 접속 권한이 있는 사람이라면 누구나 접근할 수 있게 되며, 네트워크를 통해 수행되는 모니터링 기능도 훨씬 더 광범위한 네트워크 환경의 문제점에 노출될 수 있음을 의미합니다. Stratus는 이러한 조치를 취하지 말 것을 강력히 권고합니다.
이 글에서는 유지보수 네트워크를 Stratus 모듈 환경으로만 제한하면서도 웹 브라우저 GUI 인터페이스를 통해 이러한 장치를 관리할 수 있는 세 가지 방법을 설명합니다. 첫 번째 방법은 Stratus 모듈의 IP 인터페이스 중 하나와 동일한 서브넷에 위치한 브라우저에서 접속하려는 경우를 가정합니다. 다음 두 가지 방법은 SSH 터널링을 사용합니다.
이 예시에서 Stratus 모듈의 인터페이스 주소는 164.152.77.217/24이며, 유지보수 네트워크 주소는 10.10.1.0/24입니다. 접속하려는 장치의 IP 주소는 10.10.1.20입니다.
방법 1 – 워크스테이션에서 라우팅 변경
첫 번째 방법은 가장 간단합니다. 워크스테이션에서 목적지를 단일 주소나 전체 10.10.1.0/24 서브넷 중 하나로 설정하고, 게이트웨이를 Stratus 모듈의 164.152.77.217/24 인터페이스로 지정하여 경로를 설정합니다(그림 1 참조). 이 예제에서는 10.10.1.0/24 서브넷 전체로 경로를 설정하여 Stratus 모듈을 통해 해당 서브넷의 모든 호스트에 접속할 수 있도록 했습니다. 이 방법은 Stratus 모듈이 포워딩을 허용하도록 구성되어 있고, 브라우저를 실행하는 워크스테이션도 164.152.77.0/24 서브넷에 속해 있을 때만 작동합니다. 그런 다음 장치의 IP 주소를 통해 장치에 접속합니다(그림 2 참조). 포워딩을 활성화하는 것은 일부에서 보안 위험으로 간주될 수 있다는 점에 유의하십시오. 또한 OpenVOS 17.1.0부터 17.1.0bl 버전을 실행하는 모듈은 stcp-3050 및 stcp-3072 버그의 영향을 받을 수 있으므로 포워딩을 활성화해서는 안 됩니다.
이 방식을 사용할 경우, 다른 Stratus 모듈의 유지보수 네트워크에 있는 장치에 접속하려면 기존 경로를 삭제하고, 새로운 Stratus의 IP 주소를 게이트웨이로 지정하여 새 경로를 추가해야 합니다.
방법 2 – 워크스테이션에서 SSH 터널 설정하기
두 번째 방법은 사용자의 워크스테이션과 Stratus 모듈 사이에 SSH 터널을 설정하는 것입니다. 이를 위해서는 Stratus 모듈에서 SSH가 실행 중이어야 하며, 사용자의 워크스테이션에는 터널링을 지원하는 SSH 클라이언트가 설치되어 있어야 합니다. 터널링을 지원하는 모든 SSH 클라이언트를 사용할 수 있지만, 당연히 설정 방법은 클라이언트에 따라 달라집니다. 여기서는 MS Windows 환경에서 실행되는 두 가지 무료 클라이언트, 즉 PuTTY와 Cygwin에서 실행되는 OpenSSH에 대해 설명하겠습니다.
PuTTY는 http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html에서 다운로드할 수 있습니다. 이 글을 작성할 당시 제공되던 버전은 베타 0.62였으며, 2011년 12월 10일에 출시되었습니다. “베타”나 “0.”이라는 표기가 있어도 걱정하지 마십시오. 최초 버전은 1999년 1월에 출시된 베타 0.45였습니다. 많은 사용자가 이 코드를 아무런 문제 없이 사용하고 있습니다.
PuTTY를 설치한 후 putty.exe 아이콘을 클릭하여 설정 대화 상자를 엽니다. 첫 번째 단계는 모듈의 IP 주소나 호스트 이름을 입력하는 것입니다. 제 경우에는 164.152.77.217입니다. 포트 번호는 22로, 연결 유형은 SSH로 설정해야 합니다.
이제 SSH 아래의 “Tunnels” 항목을 선택하고 “Source port” 및 “Destination” 입력란을 채워주세요. Destination에는 연결하려는 유지보수 네트워크상의 대상 장치의 IP 주소를 입력합니다. 그 뒤에 콜론(:)을 붙이고 포트 번호(80)를 입력합니다. Source port에는 사용 중인 워크스테이션의 사용되지 않는 임의의 포트를 지정할 수 있습니다. 저는 NNHHP라는 표준 공식을 사용합니다. 대상의 네트워크 주소에서 2자리, 호스트 번호에서 2자리, 포트 번호에서 1자리를 취하는 방식입니다. 따라서 10.10.1.20 포트 80은 10208이 됩니다. 하지만 앞서 말씀드렸듯이, 사용 중이지 않은 번호라면 무엇이든 상관없습니다.
“추가” 버튼을 누르면 정보가 “전송된 포트” 상자로 이동합니다. 이제 “열기”를 누르세요.
명령어 또는 터미널 창과 비슷한 화면이 나타납니다. “login as”라는 메시지와 함께 사용자 이름을 입력하라는 요청이 나오고, 이어서 비밀번호를 입력하라는 메시지가 표시될 것입니다. 이 정보를 입력하고 인증이 완료되면 화면이 멈춘 것처럼 보일 수 있습니다. 이 작업을 자주 수행하신다면, 입력 요청을 건너뛸 수 있도록 공개/개인 키를 설정해 두시는 것을 권장합니다. 다음 단계는 브라우저를 열고, 주소창에 127.0.0.1:NNHHP를 입력하는 것입니다. 여기서 NNHHP는 PuTTY 설정에서 입력한 “소스 포트(Source Port)” 값입니다. 이 시점에서 연결하려는 유지보수 네트워크에 있는 장치의 로그인 화면이 표시될 것입니다.
PuTTY를 사용하고 싶지 않다면 Cygwin을 다운로드하여 사용할 수 있습니다. 이는 Windows 플랫폼에서 네이티브 Linux 애플리케이션을 실행할 수 있게 해주는 환경입니다. http://www.cygwin.com에서 찾을 수 있으며, 이 글을 작성하는 시점의 버전은 1.7.17-1입니다. OpenSSH는 "Net" 패키지에 포함되어 있는데, 이 패키지는 기본적으로 설치되지 않으므로 다운로드 및 설치 시 반드시 선택해야 합니다.
설치가 완료되면 bash 셸을 실행하는 Cygwin 명령 창이나 기본 Windows 명령 프롬프트를 사용할 수 있습니다. c:cygwinbin 디렉터리로 이동한 후 SSH 명령어 “ssh -2TNx -L 10208:10.10.1.20:80 [email protected]”을 실행하세요. “nd”는 제 사용자 이름 별칭이므로, 당연히 본인의 사용자 이름을 사용해야 합니다. 이 시점에서는 PuTTY와 매우 유사한 화면이 나타나며, 비밀번호 입력을 요청받은 후 창이 멈춘 것처럼 보일 것입니다. 브라우저를 열어 127.0.0.1:10208로 접속하면 해당 화면에 접속된 것을 확인할 수 있습니다.
Windows 대신 리눅스 배포판을 사용 중이라면 이미 OpenSSH가 설치되어 있을 가능성이 높습니다. 터미널 창을 열고 “ssh -2TNx -L 10208:10.10.1.20:80 [email protected]”와 똑같은 SSH 명령어를 입력한 다음, 표시되는 안내에 따라 응답하고 브라우저를 여는 방법도 Windows와 완전히 동일합니다.
이 방식의 장점 중 하나는 어디서든 사용할 수 있다는 점입니다. 사용자의 워크스테이션이 Stratus의 인터페이스 중 하나와 같은 서브넷에 속해 있을 필요가 없습니다. 또한 모든 통신은 암호화됩니다.
방법 3 – Stratus 모듈에서 SSH 터널 설정하기
세 번째 방법도 SSH를 사용하지만, 이번에는 모듈에서만 적용합니다. 선호하는 터미널 에뮬레이터를 사용하여 Stratus 모듈에 로그인한 다음, 거의 동일한 SSH 명령어를 사용합니다. 유일한 차이점은 모듈 외부에서의 연결을 허용하는 “g” 옵션으로, “ssh-2TNxg -L 10208:10.10.1.20:80 [email protected]″와 같이 입력합니다. 로그인 후에는 브라우저에서 127.0.0.1 대신 모듈의 주소를 입력하지만, 포트 번호는 여전히 10208(또는 -L 인수의 첫 번째 숫자)로 유지됩니다.
두 번째 방법과 마찬가지로, 이 방법도 모듈에 접속할 수 있는 모든 워크스테이션에서 사용할 수 있습니다. 워크스테이션에서 SSH를 실행했던 두 번째 방법과 달리, 이 방법은 워크스테이션과 모듈 간의 연결을 암호화하지 않습니다. 반면, 워크스테이션에 별도의 소프트웨어를 설치할 필요가 없습니다. 마지막으로, 이미 실행 중인 프로세스에서 SSH 명령을 실행할 수 있습니다. 모듈이 부팅될 때 각 장치마다 하나의 프로세스를 시작하면 항상 사용할 수 있습니다. 주의할 점은 모듈에 접속할 수 있는 누구나 이 포트에 연결하여 대상 장치로 전달될 수 있다는 것입니다. 모듈에서 인증을 수행하지 않으므로 이는 보안 문제가 될 수 있습니다.
다시 한 번 강조하자면, Stratus는 유지보수 네트워크의 격리 상태를 유지할 것을 강력히 권장합니다. CLI 대신 관리용 GUI 인터페이스를 사용하려면 다음 방법 중 하나를 선택하십시오.
