.. _mudfish-install: ***************** 설치 방법 (PC 용) ***************** 이 문서는 PC 용 미꾸라지 Cloud VPN 을 설치하는 방법에 대해 기술한 문서입니다. 아래의 목록을 살펴보셔서 자신의 환경에 맞는 섹션을 참고하시기 바랍니다. .. contents:: :local: 프로그램 받기 ============= 최신 mudfish 배포판은 https://mudfish.net 의 "다운로드" 섹션에서 가능합니다. 현재 Linux 와 Mac OS X, Windows 를 위한 설치본을 배포하고 있습니다. * Windows 32 bit 와 64 bit (binary 는 32 비트, 드라이버는 64 비트) 용이 제공되며 지원되는 윈도우즈 버전은 다음과 같습니다. * Windows XP (SP2 이후) * Windows Vista * Windows 7 * Windows 8 * Windows 8.1 * Windows 10 * Mac OS X OS X 버전 10.9 (OS X Mavericks) 기준으로 빌드된 버전입니다. 실행의 문제가 있어 다른 하위 OS X 버전 지원을 원하신다면 support@mudfish.zendesk.com 으로 요청 바랍니다. * Linux 64 bit 용만 현재 제공되며 지원되는 리눅스 배포판은 다음과 같습니다. 혹여나 다른 배포판을 위한 package 를 원하신다면 support@mudfish.zendesk.com 으로 요청 바랍니다. * Ubuntu 12.04 LTS 사용하시는 OS 와 CPU 타입에 따라 알맞은 설치 파일을 다운로드 받으셔야 합니다. 설치 및 제거 ============ 윈도우즈 -------- 프로그램 설치 ^^^^^^^^^^^^^ 받으신 설치 프로그램을 실행하시면 우선 첫 번째 화면으로 component 선택 화면을 보실 수 있습니다. .. image:: _static/setup_1_instopt.png :align: center :alt: 설치할 component 선택 현재 두 개의 component 가 존재하며 각각은 다음과 같은 프로그램을 시스템에 설치합니다. * mudfish core 파일들. 실제 데이타의 전송 및 가속을 해주는 모듈이 포함되어 있습니다. 추가적으로 crash reporting 을 위한 모듈이 함께 설치되게 됩니다. * TAP-Win32 Adapter v9 core 모듈과 함께 작동하는 가상 miniport adapter 입니다. 설치 시 OpenVPN technology Inc. 에서 배포하는 tap0901 드라이버를 설치하게 됩니다. 다음 화면은 설치할 디렉토리를 선택하는 화면입니다. 이 설명서에는 mudfish 가 ``C:\Program Files\Mudfish Cloud VPN`` (64bit 머신에서는 ``C:\Program Files (x86)\Mudfish Cloud VPN``) 에 설치되었다고 가정합니다. .. image:: _static/setup_2_instfolder.png :align: center :alt: 설치 디렉토리 선택 폴더 선택이 끝났다면 이제 설치 버턴을 눌러주세요. .. image:: _static/setup_3_cert.png :align: center :alt: 인증서 에러 화면 처음 TAP-Win32 Adapter v9 를 설치한다면 도중에 위 화면과 같은 경고창을 만나실 수 있습니다. "계속(C)" 버튼을 클릭하여 설치를 진행합니다. 만약 Windows 7/8 사용자의 경우 경고창이 뜰 수 있습니다. .. image:: _static/setup_3_cert_w7.png :align: center :alt: Windows 7/8 에서의 경고 화면 "설치(I)."을 선택하셔서 설치를 계속해 주십시오. .. image:: _static/setup_4_done.png :align: center :alt: 설치 완료 설치가 모두 끝났습니다. 프로그램 제거 ^^^^^^^^^^^^^ "시작 프로그램" -> "Mudfish Cloud VPN" -> "Uninstall Mudfish" 항목을 실행함으로써 프로그램 제거를 할 수 있습니다. 만약 해당 링크를 발견할 수 없다면 탐색기를 이용하여 ``C:\Program Files\Mudfish Cloud VPN`` (64 bit OS 의 경우, ``C:\Program Files (x86)\Mudfish Cloud VPN``) 로 이동하면 해당 디렉토리 안에 uninstall.exe 파일이 있습니다. 해당 파일을 실행하시면 프로그램 제거를 위한 화면이 나타납니다. ``C:\Program Files\Mudfish Cloud VPN`` 하위에 있는 디렉토리와 파일들이 삭제되며 TAP-Win32 Adapter v9 또한 삭제됩니다. Mac OS X -------- 프로그램 설치 ^^^^^^^^^^^^^ 다운로드 페이지를 통해서 Mac OS X 용 미꾸라지를 패키지를 다운로드 받으셨다고 가정하겠습니다. 패키지 확장자는 .dmg 입니다. 해당 파일을 더블 클릭하시면 해당 파일이 운영체제에 마운트 되면서 미꾸라지 프로그램을 보실 수 있으실 겁니다. .. image:: _static/macosx_installer_main.png :align: center 다른 Mac OS X 설치 패키지와 마찬가지로 미꾸라지 아이콘을 Applications 폴더로 복사하시면 됩니다. .. warning:: .dmg 패키지 내에서 단순히 미꾸라지를 실행하는 것은 작동되지 않기 때문에 반드시 Applications 폴더에 설치해 주신 후 실행하셔야 합니다. 프로그램 제거 ^^^^^^^^^^^^^ 응용 프로그램 폴더에서 Mudfish Cloud VPN 을 휴지통으로 옮기셔서 삭제하실 수 있습니다. 혹시 수동으로 프로그램을 삭제하시려면 아래의 명령을 통해서 삭제하실 수 있습니다. .. code-block:: bash $ sudo rm -rf /Applications/Mudfish\ Cloud\ VPN.app/ 리눅스 ------ 프로그램 설치 ^^^^^^^^^^^^^ 다운로드 페이지를 통해서 리눅스용 미꾸라지를 패키지를 다운로드 받으셨다고 가정하겠습니다. 패키지 확장자는 .sh 입니다. 아래는 버전 v4.3.16 을 다운로드 받으셨다는 가정하에 작성된 설치 예제입니다. .. code-block:: bash $ wget http://static.loxch.com/releases/mudfish-4.3.16-linux-x86_64.sh $ sudo sh mudfish-4.3.16-linux-x86_64.sh Verifying archive integrity... All good. Uncompressing Mudfish Cloud VPN v4.3.16...... Installation is done under /opt/mudfish/4.3.16. $ ls -l /opt/mudfish/4.3.16/bin/ 리눅스용 미꾸라지의 경우 총 3 개의 executable binary 로 구성되어 있으며 설치 위치는 항상 ``/opt/mudfish/$(VERSION)/bin/`` 에 됩니다. 만약 여러 버전의 패키지가 설치된다면 버전 마다 각각 다른 디렉토리가 사용됩니다. 프로그램 제거 ^^^^^^^^^^^^^ 프로그램을 삭제하시려면 아래의 명령을 통해서 삭제하실 수 있습니다. 현재 사용하고 계신 프로그램의 버전을 확인하시고 알맞은 디렉토리를 삭제하시면 됩니다. .. code-block:: bash $ sudo rm -rf /opt/mudfish/4.3.16/ 사용하기 ======== Mudfish Cloud VPN은 크게 세 개의 프로그램으로 구성되어 있습니다. mudfish, mudflow 와 mudrun 이 그것인데요, 각 프로그램의 역할에 대해서 잠깐 말씀드리면 아래와 같습니다. * mudfish (Mudfish Core) 미꾸라지의 핵심 프로그램입니다. Routing Table 수정 및 트래픽 처리 그리고 미꾸라지 중계 서버와의 통신 등등을 담당합니다. mudrun 의 사용이 불가능할 경우 명령 프롬프트 창을 통해서 직접 실행하실 수도 있습니다. * mudflow (Mudfish Flow Controller) 미꾸라지의 트래픽과 라우팅 테이블을 관리하는 프로그램입니다. RTT 검사와 Routing Path 세팅이 이 프로그램을 통해 이루어집니다. * mudrun (Mudfish Launcher) mudfish 을 실행시키기 위한 도우미 역할을 하는 프로그램입니다. 명령 프롬프트를 이용할 경우, 서버 선택과 서비스 선택이 쉽지 않기 때문에 이를 해결하기 위해서 HTML 기반의 인터페이스를 제공합니다. 계정 만들기 ----------- 미꾸라지를 사용하기 위해서는 반드시 사용자 ID가 필요하며 첫 홈페이지 화면 (https://mudfish.net) 에서 사용하고자 하시는 계정을 만들어주시면 됩니다. 실행하기 -------- 윈도우즈 ^^^^^^^^ Mudfish Launcher 를 실행하기 전에 ********************************* 미꾸라지 프로그램이 제대로 동작하기 위해서는 반드시 TAP-Win32 Adapter v9 인터페이스가 DHCP 서버로부터 IP 를 받도록 설정되어 있어야 합니다. Windows Vista/7 기준으로 제어판 -> 네트워크 공유 센터 -> 어댑터 설정변경 메뉴에 가시면 TAP-Win32 Adapter v9 이름으로 명명된 장치를 찾으실 수 있을 것입니다. 찾을 수 없다면, 미꾸라지 설치에 문제가 있음을 의미합니다. .. image:: _static/ko_00045_01.png :align: center .. image:: _static/ko_00045_02.png :align: center 해당 장치의 속성에서 Internet Procotol Version 4 의 속성을 아래와 같이 살펴봐 주세요. (영문 Windows 7 기준으로 설명해 드려서 죄송합니다. ㅡ.ㅜ) .. image:: _static/mudfish_dhcp1.png :align: center 아래 화면과 같이 IP 와 DNS 서버 주소를 자동으로 받도록 반드시 설정해 놓으셔야 합니다. .. image:: _static/mudfish_dhcp2.png :align: center 위와 같이 설정하시고 확인하여 저장하시면 미꾸라지 Cloud VPN 사용 준비는 끝났습니다. Mudfish Launcher 실행하기 ************************* Mudfish Launcher 프로그램을 실행하시려면 아래와 같이 수행하십시오. * "시작" -> "모든 프로그램" -> "Mudfish Cloud VPN" -> "Mudfish Launcher" 을 실행 하시면 브라우저에 로그인 창이 나옵니다. Windows Vista/7/8 사용자의 경우, "Mudfish Launcher" 실행 시 반드시 **관리자 권한으로 실행** 메뉴로 실행하십시오. "Mudfish Launcher" 아이콘에서 오른쪽 버튼 클릭 시 확인할 수 있습니다. .. image:: _static/mudrun_run.png :align: center :alt: Windows Vista/7/8 을 위한 "mudfish launcher" 실행 실행을 하게 되면 "Mudfish Launcher" 은 IP 127.0.0.1 의 임의의 port (기본적으로 http://127.0.0.1:8282) 에 TCP listening 을 하게 되며, 해당 서비스로 접속하도록 기본 브라우저를 띄우게 됩니다. Mac OS X ^^^^^^^^ .. warning:: 미꾸라지 실행 시 보안 정책으로 인해 실행이 막힐 수 있습니다. .. image:: _static/macosx_installer_secwarn.png :align: center 그럴 경우 '시스템 환경설정 -> 보안 및 개인 정보' 에서 예외 허용을 하실 수 있습니다. .. image:: _static/macosx_installer_sec.png :align: center Mudfish Launcher 프로그램을 응용 프로그램에서 선택하여 실행하시면 되는데, 실행 과정에서 root 패스워드를 묻게 됩니다. .. image:: _static/macosx_installer_auth.png :align: center 성공적으로 프로그램이 실행되면 오른쪽 상단에서 Menulet 형태의 프로그램으로 작동하고 있는 것을 확인하실 수 있습니다. .. image:: _static/macosx_menulet.png :align: center 이제 'Open Dashboard' 와 같은 메뉴를 통해 대쉬보드에 접근하셔서 로그인 및 설정을 계속 하시면 됩니다. 참고로 Mudfish Cloud VPN 실행 파일은 반드시 root 권한으로 실행이 되어야 하는데요, 아래와 같은 필요로 인해 root 권한이 필요합니다. * 내부적으로 현재 사용자 컴퓨터와 중계 서버 간 ICMP 프로토콜을 이용하여 RTT (Round Trip Time) 을 계산하는 부분이 있는데, ICMP 프로토콜을 Mac OS X 상에서 구현을 하려면 raw socket 사용이 필수인데, root 권한만 이를 사용할 수 있습니다. * 마법사 메뉴를 통해 IP 주소를 세팅할 경우, 사용하시는 운영체제의 라우팅 테이블을 수정해야 하는데 이 또한 root 권한이 필요합니다. * 미꾸라지의 통신을 위해서 사용되는 tap(4) 장치의 IP 할당을 위해서 DHCP 프로토콜이 사용되는데, 이를 fetch 할 dhclient 명령이 root 권한이 필요합니다. Linux ^^^^^ Mudfish Launcher 프로그램을 실행하시려면 아래와 같이 수행하십시오. 아래는 설치 버전이 v4.3.16 이라고 가정하고 작성된 예제입니다. 현재 설치하신 버전 정보에 유의하셔서 사용하시기 바랍니다. .. code-block:: bash $ sudo /opt/mudfish/4.3.16/bin/mudrun mudrun (Mudfish Launcher) 프로그램은 반드시 root 권한으로 실행이 되어야 하는데요, 아래와 같은 필요로 인해 root 권한이 필요합니다. * 내부적으로 현재 사용자 컴퓨터와 중계 서버 간 ICMP 프로토콜을 이용하여 RTT (Round Trip Time) 을 계산하는 부분이 있는데, ICMP 프로토콜을 리눅스 상에서 구현을 하려면 raw socket 사용이 필수인데, root 권한만 이를 사용할 수 있습니다. * 마법사 메뉴를 통해 IP 주소를 세팅할 경우, 사용하시는 운영체제의 라우팅 테이블을 수정해야 하는데 이 또한 root 권한이 필요합니다. * 미꾸라지의 통신을 위해서 사용되는 tap(4) 장치의 IP 할당을 위해서 DHCP 프로토콜이 사용되는데, 이를 fetch 할 dhclient 명령이 root 권한이 필요합니다. 실행을 하게 되면 "Mudfish Launcher" 은 IP 127.0.0.1 의 임의의 port (예를 들면 http://127.0.0.1:8282) 에 TCP LISTENING 을 하게 됩니다. 편하신 브라우저를 띄우셔서 해당 URL 로 접근하시면 됩니다. 로그인 하기 ----------- "Mudfish Launcher" 이 제대로 동작한다면 브라우저에 다음과 같이 나타나야 합니다. .. image:: _static/qs_signin.png :align: center :alt: "Mudfish Launcher" 로그인 화면 위 "계정 만들기"에서 생성한 ID/PASSWORD 을 입력한 후 로그인하시면 됩니다. 로그인이 성공적으로 되었다면 아래와 같은 화면이 뜰 것입니다. .. image:: _static/qs_dashboard.png :align: center :alt: "Mudfish Launcher" 대쉬보드 이제 미꾸라지를 사용할 준비가 되었습니다. 미꾸라지 중지 하기 ------------------ 윈도우즈 ^^^^^^^^ 미꾸라지 실행 후 프로그램을 종료하고 싶으시다면 system tray 에 있는 Mudfish Launcher 아이콘을 종료하는 것입니다. 아이콘 위에서 오른쪽 버튼 클릭 시 메뉴를 볼 수 있는데, 거기 Exit 을 선택함으로써 미꾸라지 프로세스들을 종료할 수 있습니다. Mac OS X ^^^^^^^^ Menulet 아이콘을 클릭하였을 때 나오는 Exit 메뉴 혹은 Mudfish Cloud VPN 프로세스를 kill 명령으로 죽이시면 됩니다. Linux ^^^^^ 프로세스 리스트에서 mudrun 을 kill 명령으로 죽이시면 됩니다. 아직은 정식 종료 방법은 없습니다.