본문 바로가기

개발환경설정

[VPN] macOS에서 docker를 이용하여 wireguard 설정

[ 목적 ]

macOS에서 docker를 이용하여 wireguard 설정하여 외부 네트워크 망에서도 특정 서버에 접근할 수 있게 한다.

 

[ 방법 ]

1. linux 추가 및 docker 설치 

https://helena90-study.tistory.com/23

 

2. 공유기 포트포워딩 

- 공유기 관리 사이트로 이동 후 1에서 설치한 서버의 ip를 포트포워딩한다.

port forwarding > 서비스이름, wireguard를 설치한 서버의 내부ip주소 , 포트번호, upd로 설정을 각각 적용한 후 저장한다.

 

 

3. wireguard  설치

  1) 디렉토리 추가 후 이동

$ mkdir wireguard
$ cd wireguard

 

  2) docker-compose.yml 생성 및 열기

$ edho '' > 'docker-compose.yml'
$ vim 'docker-compose.yml'

 

  3) docker-compose.yml 작성

version: "3.8"
services:
  wg-easy:
    environment:
      - WG_HOST= #공인IP주소 또는 도메인 추가

      #Optional:
      - PASSWORD= #비밀번호 추가
      - WG_PORT=51820
      - WG_DEFAULT_ADDRESS=10.8.0.x
      - WG_DEFAULT_DNS=1.1.1.1
      - WG_MTU=1420
      - WG_ALLOWED_IPS=192.168.0.0/16
      # 공유기 ip대역에 따라 192.168.0.0 또는 192.168.1.0
      # 모든 트래픽을 다 열어 줄려면
      # - WG_ALLOWED_IPS=0.0.0.0/0, ::/0, 192.168.0.0/16

    image: weejewel/wg-easy
    container_name: wg-easy
    volumes:
      - ./wg-easy:/etc/wireguard
    ports:
      - "51820:51820/udp"
      - "51821:51821/tcp"
    restart: unless-stopped
    cap_add:
      - NET_ADMIN
      - SYS_MODULE
    sysctls:
      - net.ipv4.ip_forward=1
      - net.ipv4.conf.all.src_valid_mark=1

 

 

 

5) yml 파일을 실행하여 설치

docker-compose up -d

 

-) yml 파일 수정 시 docker-compose 파일을 내린 후 다시 up해야 적용된다.

docker-compose down

 

 

 

4. wireGaurd 관리 페이지 이동 

  1) 브라우저에서 'http:// 내부아이피주소:포트번호' 으로 이동

http://내부아이피주소:51821/  

 

  2) docker-compose.yml 에 입력했던 비밀번호 입력 후 엔터

 

  3) vpn설정할 계정 추가 후 파일 내려받기 클릭 

 

 

5. wireGaurd 클라이언트 설정

 1) 클라이언트 다운로드한다.
  https://www.wireguard.com/install/

 

  2) 실행 후 4에서 내려받은 파일을 추가 한다 

  3) 다른 네트워크망으로 변경 후 더블클릭하여 vpn을 실행한다.