• 돌아가기
  • 아래로
  • 위로
  • 목록
  • 댓글
질문

Wireguard 사용시 client 들끼리 ssh 통신

honbul 699

1

9

안녕하세요

Wireguard 세팅을 이래저래 찾다 달소님의 wg-easy를 세팅하여 사용중인 학생입니다. (달소님 감사합니다.)

 

wg-easy는 현재 집 서버 (우분투 20.04)에 세팅되어있습니다.

 

학교 연구실 네트워크 내에 제가 사용중인 pc들이 2대가 있습니다.

원래는 연구실 네트워크 세팅 조정을 통해 원격 접속이 가능했지만

안타깝게도 최근 연구실 확장 이전으로 인해 네트워크 세팅을 조정할 수 없는곳에 배치받아

현재 외부에서 접속할 수가 없습니다.

 

이런 환경에서 제게 든 생각은

사용중인 연구실 컴퓨터들을 집에 구축한 wireguard vpn에 접속시킨다면

적절한 세팅을 통해 외부에서 접속가능하지 않을까

였습니다.

 

가장 최종 목표는 연구실 컴퓨터에 세팅된 jupyter lab에 접속하는 것입니다.

jupyter에 접속하기 앞서 ssh 접속부터 가능해야 하지 않을까 하는 생각에 (ssh만 되면 tunneling할 생각입니다.)

ssh를 일단 wireguard 에 접속된 client들끼리 연결을 해보고자 열심히 찾아보고 있습니다만

쉽지 않은 문제인듯 합니다.

 

현재 확인한 부분은

1. client to server, client to client 간의 ping은 문제없이 동작합니다.

2. client에서 wireguard가 세팅된 서버로의 ssh는 가능합니다.

3. server에서 client로의 ssh는 동작하지 않습니다.

4. client에서 client로의 ssh는 동작하지 않습니다.

 

어느 부분을 어떻게 만지면 좋을까요?

 

yml 파일은 아래와 같습니다.

----------------------------------------------------------------

version: "3.8"
services:
  wg-easy:
    environment:
      # ⚠️ Required:
      # Change this to your host's public address
      - WG_HOST=DDNS 주소~

      #Optional:
      - PASSWORD=비밀번호~
      - WG_PORT=51820
#      - WG_DEFAULT_ADDRESS=10.10.0.0
#      - WG_DEFAULT_DNS=8.8.8.8
#      - WG_MTU=1420
#      - WG_ALLOWED_IPS=0.0.0.0/0
#      - WG_PERSISTENT_KEEPALIVE=10

    image: weejewel/wg-easy
    container_name: wg-easy
    volumes:
      - /home/honbul/wireguard/config:/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

--------------------------------------------------------

 

wg0.conf 파일은 아래와 같습니다.

----------------------------------------------------------

[Interface]
PrivateKey = #
Address = 10.13.13.0/24
ListenPort = 51820
PostUp =  iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE; iptables -A INPUT -p udp -m udp --dport 51820 -j ACCEPT; iptables -A FORWARD -i wg0 -j ACCEPT; iptables -A FORWARD -o wg0 -j ACCEPT;
PostDown =


# Client: phone (56573cc3-304b-43e5-ab44-7a3efcb7c9b2)
[Peer]
PublicKey = #
PresharedKey =#
AllowedIPs = 10.8.0.2/32

# Client: Galaxy (af04b769-8321-4a9c-b0ba-b790e979e271)
[Peer]
PublicKey = #
PresharedKey = #
AllowedIPs = 10.8.0.4/32

# Client: vega (2e524aff-a1e5-4712-8b38-a466cc845ec2)
[Peer]
PublicKey = #
PresharedKey = #
AllowedIPs = 10.8.0.3/32

---------------------------------------------------------------------------------

 

신고공유스크랩
9
profile image 1등
Intuit 2022.05.02. 19:49

2. client에서 wireguard가 세팅된 서버로의 ssh는 가능합니다.

 

이게 가능하시면 ssh 터널링도 가능할거고, VPN연결도 가능한거 아닌가요?

 

클라이언트들을 모두 VPN서버에 붙이시고,

 

이후에는 각 클라이언트 끼리 같은 네트워크에 물려있는 상황이니 문제 없을것 같은데..

 

2번하고 4번하고 상충되는거라 잘 모르겠네요 ㅠㅠ..

 

3번은 포트문제일 수 있으니 그부분 먼저 확인해보세요-

honbul 글쓴이 2022.05.02. 20:51
Intuit

댓글 감사합니다!

클라이언트들을 모두 vpn에 붙인 상태에서 서로간 ssh가 안되는 상황인데 제가 지식이 짧아 어렵군요 ㅠㅠ

말씀 주신 부분 다시 한번 확인해 보겠습니다!

profile image
달소 2022.05.02. 21:15
honbul

서로간 ssh가 안되시는상태라면 아마 방화벽 문제가아닐까 합니다.

저도 RDP로 테스트해봤는데 client간 rdp도 문제없이 됐었습니다!

profile image
달소 2022.05.02. 21:17
달소

서버 to client 역시 서버가 wireguard 클라이언트 연결 후 특정 ip로만 allowed ip 설정을 해주시면될듯합니다.

 

or 아예 모든 client /svr 을 외부의 zerotier를 이용해서 사설 SDN을 구축하는방법도있습니다

honbul 글쓴이 2022.05.03. 08:37
달소

조언 감사합니다!

말씀해주신 부분 확인하고 공부해 보겠습니다!

profile image
Intuit 2022.05.03. 09:18
honbul

VPN에 붙으면 기존에 가지고 있는 real IP 대신에 VPN접속 환경에서 부여되는 ip가 별도로 생성됩니다.

변경된 ip끼리 통신에 이상이 있는지부터 확인하시는게 좋을 것 같습니다.

 

vpn 연결 전에 클라이언트끼리 ping 문제 없이 작동되었다면,

모든 클라이언트가 vpn에 붙어있을때 핑테스트도 이상이 없어야 합니다.

 

honbul 글쓴이 2022.05.03. 11:17
Intuit

그렇군요 ㅠㅠ

일단 확인부터 해봐야겠습니다.

정보 감사합니다!

profile image 2등
쪼꼬모카라떼 2022.05.02. 20:13

저의 경우엔 외부에서 서버 관리는 guacamole 사용하고 있습니다,

달소님 정리한글도 있으니 한번 보세요

docker run --name guacamole -p 8080:8080 -v /volume1/docker/guacamole:/config oznu/guacamole 
한줄로 끝납니다.

불륨만 조정하시고 web으로 접속하면 초기 사용자가 guacadmin/guacadmin이니 접속해서 사용자 바꾸시고 사용하시면

됩니다.

honbul 글쓴이 2022.05.02. 20:53
쪼꼬모카라떼

정보 공유 감사합니다!

해당 내용 한번 공부해서 적용해 보겠습니다!

댓글 쓰기 권한이 없습니다. 로그인

취소 댓글 등록

cmt alert

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

삭제하시겠습니까?


목록

공유

facebooktwitterpinterestbandkakao story
번호 분류 제목 글쓴이 날짜 조회 추천
오픈소스 Hoarder 소개 📦 - AI 기반 태깅 기능을 갖춘 오픈 소스 Bookmark-Everything 앱(mymind 오픈 소스 대안) 6 달소 1일 전22:53 200 +1
정보 Proxmox) VMware ESXi 기반 가상 머신 마이그레이션에 사용할 수 있는 새로운 가져오기 마법사 5 달소 1일 전22:48 101 +1
정보 안녕하세요! 새로 가입했습니다. 6 Razorbacks 1일 전18:06 92 +1
3780 질문
normal
막강태우 6시간 전16:48 141 0
3779 잡담
normal
kmw_ 10시간 전13:43 250 0
3778 오픈소스
image
달소 1일 전22:53 200 +1
3777 정보
image
달소 1일 전22:48 101 +1
3776 정보
image
Razorbacks 1일 전18:06 92 +1
3775 질문
normal
맛밥 1일 전15:34 249 0
3774 정보
image
툭툭이 1일 전11:14 493 +12
3773 질문
normal
유니파트 2일 전22:09 212 0
3772 질문
image
반투검스 2일 전12:46 77 0
3771 질문
normal
니즛 2일 전00:37 372 0
3770 잡담
image
주차장 3일 전17:47 513 +1
3769 질문
image
양미 3일 전11:16 227 0
3768 질문
normal
주차장 4일 전23:44 180 0
3767 질문
image
surno 4일 전00:56 130 0
3766 질문
image
TANG 5일 전19:14 420 0
3765 질문
image
게르노 5일 전23:55 481 0
3764 질문
normal
very 6일 전09:57 218 0
3763 질문
normal
ljr10 6일 전09:11 88 0
3762 질문
normal
very 24.03.22.18:04 249 0
3761 가이드
normal
minis 24.03.22.14:20 159 0