안녕하세요. 나스당엔 처음 글쓰게 되었습니다.
눈팅으로 정보글 쭉 섭렵하다가 어렵사리 WireGuard 설치에 성공하게 돼서 경험을 공유하고자 합니다.
제가 초보다 보니 초보분들도 어느정도 따라할 수 있게 (그리고 저도 나중에 문제생기면 다시 찾아볼 수 있게) 정리해봤습니다.
** 주의사항 : 제가 초보자여서 포트번호 등 기본값을 그대로 사용하였으므로 양해 부탁드립니다.
조건 :
1. 윈도우의 putty 등 시놀로지에 ssh(터미널) 접속 가능한 프로그램.
2. 시놀로지 종류에 맞는 WireGuard 패키지.
1. ssh 접속 프로그램을 다운받습니다. 저는 메인 pc가 윈도우이므로 putty로 적습니다.
Download PuTTY: latest release (0.77) (greenend.org.uk)
2. 아래 사진을 참조하여 ssh 포트를 개방하고 우측 상단 위젯을 눌러 현재 시놀로지가 점유한 ip 주소 확인합니다.
(기본은 22이지만 외부 침입 방지 등 보안을 위해 포트 번호를 임의의 번호로 정하는 것을 추천합니다. 저는 여기서 기본값을 썼습니다.)
3. putty 실행하여 위의 lan 포트 주소를 적고 open을 클릭, 시놀로지에 접속하는 계정&비밀번호 입력하여 접속되면 성공입니다.
4. 시놀로지 패키지 센터에서 docker를 검색하여 다운받습니다.
5. docker를 실행하여 레지스트리 항목 진입, wg-easy 검색하여 다운받습니다.
6. 파일스테이션 실행하면 왼쪽에 docker 항목이 새로 추가되어있습니다. 하위 폴더로 wg-easy 폴더를 만들어줍니다.
이렇게하면 docker쪽의 준비는 끝납니다.
7. wireguard 패키지를 시놀로지 기종에 맞게 설치해줍니다. 다만 인터넷에 나와있는 정보글과 달리 패키지를 수동설치하면 패키지 구성이 잘못되었다며 설치가 안됩니다. 아래의 링크에서 기종에 맞는 파일을 받아 시놀로지에 ssh로 접속하여 명령어로 패키지를 설치 및 실행해야 합니다.
https://github.com/runfalk/synology-wireguard/issues/93
이 파일을 ssh로 접속했을 때 접속되는 root 폴더에 넣어주고 ssh로 시놀로지에 접속하여 아래의 명령어를 한줄씩 입력&엔터 해줍니다.
(저의 경우는 root폴더가 home입니다.)
putty 기준 아래의 명령어를 ctrl+c 로 복사해주고 putty 에서 마우스 우클릭하면 붙여넣기가 됩니다.
* 저는 ds218+ 이므로 apollolake파일을 받았고 그 파일 이름으로 명령어를 입력했습니다.
gzip -d WireGuard-apollolake-1.0.20210606.spk.gz
sudo synopkg install WireGuard-apollolake-1.0.20210606.spk
sudo /var/packages/WireGuard/scripts/start
정상적으로 설치되었다면 패키지 센터에서 wireguard가 설치완료되어 실행중일겁니다.
저도 putty 메시지상으론 설치안된 것 같이 나왔는데 패키지 센터에서 확인해보니 정상 실행중이었습니다.
8. ssh 로 다시 시놀로지에 접속하여 아래의 명령어를 각자 환경에 맞게 변경 후 전체 복사하여 한번에 입력해줍니다. 저는 메모장에 붙여넣고 수정했습니다.
sudo docker run -d \
--name=wg-easy \
-e WG_HOST=시놀로지 ddns 주소 및 외부아이피, ddns를 추천 \
-e PASSWORD=WireGuard에사용할 비밀번호 \
-v /volume1/docker/wg-easy:/etc/wireguard \
-p 51820:51820/udp \
-p 51821:51821/tcp \
--cap-add=NET_ADMIN \
--cap-add=SYS_MODULE \
--sysctl="net.ipv4.conf.all.src_valid_mark=1" \
--sysctl="net.ipv4.ip_forward=1" \
--restart unless-stopped \
weejewel/wg-easy
docker-compose로 업데이트 하는 방법으로 바꿨습니다만 내용수정이 안되는 버그(??)로 댓글에 제 블로그 주소적어둔 곳 참고 부탁드립니다. 8번 문단에 해당하는 부분만 링크 참고해주세요
9. 성공적으로 명령어가 입력되었다면 시놀로지에서 docker를 실행시켰을 때 아래와 같은 컨테이너가 실행됩니다.
10. 포트포워딩을 해줍니다.
위의 51820/udp 포트는 wireguard 서비스가 실행될 포트고, 52821은 시놀로지의 wireguard를 웹 gui로 접속할때 필요한 포트입니다. 각자의 공유기에서 해당 포트를 시놀로지 주소로 포트포워딩 해줍니다.
11. 성공적으로 포트포워딩까지 끝났다면 인터넷 주소창에
시놀로지 ddns주소or내부 ip주소:51821로 접속하면 아래와 같은 화면이 나옵니다.
아까 메모장으로 붙여넣기하며 설정했던 비밀번호를 입력하면 메인으로 들어가집니다.
12.
빨간 네모박스의 왼쪽은 qr코드, 오른쪽은 프로파일 다운로드입니다.
wireguard 클라이언트는 맥, ios ,ipados 전부 앱스토어에서 다운로드 가능했고 패드와 폰은 qr코드로, 맥은 다운받은 프로파일로 적용하여 외부 인터넷으로 시놀로지 smb 접속가능한 것까지 전부 확인했습니다.
dsm 버전때문에 설치 안되는 문제, 그리고 나스당 내 도커 사용한 wireguard 가이드 글까지 모두 정독했지만 제 환경에서 그대로 설치가 되지않아 구글링으로 어찌어찌 하다보니 4시간걸려 설치를 했습니다.
초보다보니 구글링으로 한땀한땀 시도하다보니 실패한 것도 많아 아직 제 머릿속에 내용이 정리가 안되어 순서가 좀 안맞을 수도 있구요 ^^;; 또한 해당 방법으로 적용이 안되면 제가 어떻게 도와드릴 방법도 없네요...
실패 ex ) vi 편집기로 명령어 한번에 wg-easy 컨테이너가 생성이 안되어 구글링으로 6번 순번에 해당하는 내용을 찾아 겨우 성공
누구에게든 도움이 되길 바랍니다.
깃에 없는 시놀모델은 설치가 안되는거지요? ㅠㅠ
레딧보니 VM으로 리눅스 설치하고 그곳에다 설치하라는 이야기는 있던데요 ㅠㅠ
저도 WireGuard 설치해보고싶어서 이번에 처음 도커도 건드려본거라 ㅠㅠ 제가 쓰는 모델로만 검색해서 다른 모델은 하나도 모릅니다..!
저도 레딧보면서 봤던거는 공유기 자체에서 wireguard 지원하는 모델 쓰시거나(아수스 zenwifi 공유기, 티피링크 wifi6e 공유기 등) 하는 방법을 봤던 것 같네요..!
피드백 감사합니다 !!
안녕하세요
요 며칠 와이어가드 관련해서 더 찾다가 이런글을 봤는데 혹시 asus 공유기에 멀린펌웨어 설치해서 쓰고 계시다면
1. https://cafe.naver.com/062samo?iframe_url_utf8=%2FArticleRead.nhn%253Fclubid%3D27334440%2526articleid%3D20267
멀린펌 ampm 관련해서 공유기에 애드가드 설치하는 내용의 글인데 설치가능한 패키지에 wireguard가 있습니다.
2. https://github.com/MartineauUK/wireguard
아수스 라우터에 wireguard 설치 패키지입니다.
1번과 2번이 같은 프로그램인지는 모르겠습니다만 공유기에 2gb 이상의 ext포맷된 usb 가 있다면 시도해볼만한 것 같습니다
https://blog.naver.com/fhzmaosx4/222873938914
이 가이드 참고 해서 DS916+, DS918+ 에 잘 설치해서 운영중입니다.
저도 감사합니다 ^^;;
뭐 잘못적어놔서 안될까봐 걱정했습니다