본문으로 이동

VPN

학교의 모든 지식. SMwiki

학교에선 SSL 문제로 파이썬의 requests를 사용한 요청을 거부당하거나 패키지 설치에 문제가 생기는 경우가 많다.

  • SSL 문제 우회해서 해결하기 위함.
  • 적당히 쓰면 Tailscale 같은 거 안쓰고도 웹서버 운영이 가능하겠는걸?(ip주소를 할당하기에, 포트포워딩으로 해당 ip주소로 돌리면 손쉽게 가능할듯.)
  • [확인해봐야겠지만...] 회사망에 내부접속하는 용으로도 사용한다.
  • 사용하는 컴의 IP가 집의 IP 주소로.
  • 당연히 집의 네트워크를 이용하는 것이기에, 업무메신저, 업무포털 등 사용 불가.
  • iptime 내부에서 외부 vpn으로 연결한 기기로 포트포워딩은 불가하다.
  • 특별한 용도가 아니라면 그냥 마음 편하게 tailscale을 쓰는 게 좋다.

공유기 설정

[편집 | 원본 편집]

각 공유기마다 설정법이 다르지만 다음과 같은 순서를 따른다.

  1. 공유기 펌웨어 업데이트. 몇 년 전 펌웨어의 경우, 최신기술을 따라오지 못하는 경우 있음.
  2. DDNS 설정. 외부에서 접속이 용이하게 잡아준다.
  3. VPN 설정. 공유기에서 설정하는데, PPTP, WireGuard 등 VPN Account를 만든다.(설정화면을 닫지 않은 채 클라이언트에서 진행하면 편하다.)

OS 설정

[편집 | 원본 편집]

윈도우

[편집 | 원본 편집]

네트워크 및 인터넷 > VPN에서 '추가'로 간단하게 등록이 가능하다.

연결해서 사용하면 끝.

리눅스(우분투)

[편집 | 원본 편집]
프로토콜 설명 비고
WireGuard [아직 다 다듬어지지 않음.]

다음 내용들을 커멘드라인에서 진행한다.

  1. sudo apt install -y wireguard
  2. sudo nano /etc/wireguard/wg0.conf(보통 처음엔 파일이 없다.)
  3. 파일의 내용은 공유기 등에서 나온 옵션 값을 그대로 붙여넣으면 된다.(예시는 비고 참고)
    • AllowedIPs = 0.0.0.0 으로 해두면 모든 트래픽을 vpn으로 보내라는 의미라 뭔가 꼬인다.(인터넷이 들어와도 공유기에선 밖으로 보내지 않기에, 문제가 생긴다.)
  4. 권한 설정: sudo chmod 600 /etc/wireguard/wg0.conf
  5. 연결 테스트: sudo wg-quick up wg0
  6. 부팅 시 자동 연결: sudo systemctl enable wg-quick@wg0
  • 이후 Address = 10.10.10.2 등으로 입력한 주소로 내부망에서 ssh 접속이 가능하다.
[Interface]

PrivateKey = (ipTIME가 준 값)

Address = 10.10.10.2/24 # 이게 vpn 내부에서 연결하는 주소.

DNS = 192.168.0.1

[Peer]

PublicKey = (ipTIME 서버 공개키)

Endpoint = xxxx.iptime.org:51820

AllowedIPs = 0.0.0.0 # 기본 옵션은 전체에 대해 열려 있는데, 실제 사용되는 ip대역을 포함하도록 설정해야 한다.

PersistentKeepalive = 25