Computer >> 컴퓨터 >  >> 네트워킹 >> VPN

홈 네트워크 보안:Tailscale을 사용하여 Raspberry Pi VPN 배포

홈 네트워크 보안:Tailscale을 사용하여 Raspberry Pi VPN 배포

이 글에서는 Raspberry Pi에서 호스팅할 수 있는 VPN을 설정하는 방법을 알아봅니다. 저는 Raspberry Pis의 팬입니다. 왜냐하면 이 소형 폼 팩터 컴퓨터는 저와 같은 땜장이들이 가장 좋아하는 도구이기 때문입니다.

이 VPN을 사용하면 마치 집에 있는 것처럼 어디서나 홈 네트워크에 액세스할 수 있습니다. 그렇다면 이것이 왜 유용한가요? 글쎄요, 어디에 있든 홈 네트워크 IP를 사용할 수 있으므로 개인 정보 보호에 좋습니다.

이 기사에서는 다양한 네트워크에서 장치와 서비스를 안전하게 연결하는 작업을 간소화하는 오픈 소스 메시 VPN(가상 사설망) 서비스인 Tailscale을 사용합니다. 오픈 소스 WireGuard 프로토콜을 사용하여 암호화된 지점 간 연결을 가능하게 합니다. 즉, 개인 네트워크에 있는 장치만 서로 통신할 수 있습니다.

목차

  • 전제 조건

  • Raspberry Pi OS Lite(32비트) 설치

  • 라즈베리 파이 부팅

  • Raspberry Pi에 SSH로 접속하여 로그인

  • Raspberry Pi에 Tailscale 설치

  • 키 만료

  • Raspberry Pi를 종료 노드로 구성

  • 결론

전제조건

  • 라즈베리 파이(저는 라즈베리 파이 5를 사용하고 있습니다)

  • 라즈베리 파이 이미저

  • 마이크로 SD 카드(8GB이면 충분)

  • 컴퓨터용 마이크로 SD 카드 리더입니다.

  • 홈 라우터

  • Tailscale 계정

Raspberry Pi OS Lite(32비트) 설치

우리가 가지고 있는 마이크로 SD 카드에 Raspberry Pi OS Lite(32비트)를 설치하여 이 프로세스를 시작하겠습니다. 우리는 여기에서 무료로 제공되는 Raspberry Pi Imager 소프트웨어를 사용할 것입니다.

이미저 소프트웨어를 실행할 때 Raspberry Pi 장치를 선택하세요. 저는 Raspberry Pi 5입니다.

그런 다음 운영 체제에서 Raspberry Pi OS(기타)를 클릭한 다음 Raspberry Pi OS Lite(32비트)까지 아래로 스크롤하세요

다음으로, 카드 리더기에 삽입한 SD 카드를 선택하고, 컴퓨터에 카드 리더기를 선택합니다. 화면은 아래 보이는 것과 유사해야 합니다. 다음을 클릭하세요.

홈 네트워크 보안:Tailscale을 사용하여 Raspberry Pi VPN 배포

다음에는 OS 사용자 정의 설정을 적용할지 묻는 팝업이 표시됩니다.

홈 네트워크 보안:Tailscale을 사용하여 Raspberry Pi VPN 배포

다음으로 설정 편집을 클릭하세요. 호스트 이름 설정을 활성화하고 Pi에 부여할 이름을 작성하세요. 이 튜토리얼에서는 dapivpn을 사용하겠습니다. . 그런 다음 사용자 이름과 비밀번호 설정을 활성화합니다. 사용자 이름과 강력하고 안전한 비밀번호를 선택하세요

Wi-Fi를 사용하려는 경우 무선 LAN 구성을 활성화할 수 있지만, 팀 이더넷 케이블인 경우에는 이 단계를 건너뛸 수 있습니다. 하지만 이 튜토리얼에서는 WiFi를 사용할 것입니다.

이제 로컬 설정을 활성화하고 올바른 시간대와 키보드 레이아웃을 선택해야 합니다.

그런 다음 서비스 탭으로 이동한 다음 SSH를 활성화하고 "비밀번호 인증 사용"을 클릭하세요. 그런 다음 저장을 클릭한 다음 사용자 지정 적용 화면에서 예를 클릭하고 다시 예를 클릭합니다. 이렇게 하면 SD 카드의 모든 데이터가 삭제되므로 중요한 파일이 없는 SD 카드를 사용하고 있는지 확인하세요.

이제 Raspberry Pi Imager의 모습은 다음과 같습니다.

홈 네트워크 보안:Tailscale을 사용하여 Raspberry Pi VPN 배포

라즈베리 파이 부팅

이 작업이 완료되면 SD 카드를 가져와 Raspberry Pi에 삽입하세요. 그런 다음 전원 케이블을 Raspberry Pi에 연결하고 제대로 부팅될 때까지 몇 분 정도 기다립니다. 녹색 LED 표시등이 계속 켜져 있으면 준비가 된 것입니다.

이제 라우터로 이동하여 Raspberry Pi에 고정 IP를 설정해야 합니다. 저는 192.168.8.21로 설정했습니다. .

Raspberry Pi에 SSH를 통해 로그인

명령줄 터미널을 엽니다. “ssh <pi username>@<raspberry_pi_ip_address>를 입력하세요 ". 제 생각에는 다음과 같습니다:

ssh danpi@192.168.8.21

그런 다음 사용한 비밀번호를 입력하세요. 사용자 이름과 Pi 호스트 이름이 표시되어야 하며 이를 통해 성공적으로 로그인했음을 확인할 수 있습니다.

홈 네트워크 보안:Tailscale을 사용하여 Raspberry Pi VPN 배포

다음을 입력하세요:

sudo apt update && sudo apt upgrade -y

이 명령을 실행하여 모든 것이 로컬에서 최신 상태인지 확인하세요.

홈 네트워크 보안:Tailscale을 사용하여 Raspberry Pi VPN 배포

이제 다음을 입력하여 Pi를 재부팅하세요:

sudo reboot

이제 Tailscale의 패키지 서명 키와 저장소를 추가하겠습니다.

curl -fsSL https://pkgs.tailscale.com/stable/debian/bookworm.noarmor.gpg | sudo tee /usr/share/keyrings/tailscale-archive-keyring.gpg >/dev/null 
curl -fsSL https://pkgs.tailscale.com/stable/debian/bookworm.tailscale-keyring.list | sudo tee /etc/apt/sources.list.d/tailscale.list

다음 명령을 사용하여 Tailscale을 설치하십시오:

sudo apt-get update
sudo apt-get install tailscale

다음으로 Pi를 Tailscale 네트워크에 연결하고 인증해야 합니다. 다음 명령을 사용하면 됩니다:

sudo tailscale up

귀하의 브라우저는 다음과 같아야 합니다.

홈 네트워크 보안:Tailscale을 사용하여 Raspberry Pi VPN 배포

Raspberry Pi의 Tailscale IPv4 주소를 찾으려면 다음 명령을 실행하세요:

tailscale ip -4

브라우저의 Tailscale 대시보드에서도 확인할 수 있습니다.

이제 Tailsacle 설치가 완료되었으며 몇 가지 마무리 작업만 하면 됩니다.

키 만료

Tailsacle에 기기를 추가할 때 꼭 알아야 할 사항이 있습니다. 기본적으로 보안 기능으로 Tailscale에서는 특정 기간(보통 180일)이 경과한 후 장치를 재인증해야 합니다.

재인증이 발생하지 않으면 키가 만료되고 연결 작동이 중지됩니다. 보안 기능으로 인해 다소 불편함이 따르기 때문에 원하는 것을 선택하는 것은 귀하의 몫입니다.

나는 Raspberry Pi를 완전히 신뢰하므로 Raspberry Pi의 키 만료를 비활성화하겠습니다. 이렇게 하려면 다음을 수행해야 합니다.

  • Tailscale 관리 콘솔의 머신 페이지를 엽니다.

  • 행에서 라즈베리 파이를 찾아 옵션 메뉴를 선택하세요.

  • 키 만료 비활성화 옵션을 클릭합니다. 컴퓨터 이름 아래에 만료 비활성화 라벨이 표시되어야 합니다.

Raspberry Pi를 종료 노드로 구성하는 방법

Tailscale과 관련하여 알아야 할 또 다른 사항은 출구 노드가 무엇인지입니다. Tailscale 종료 노드는 모든 인터넷 트래픽을 이를 통해 라우팅하는 Tailscale 네트워크의 지정된 장치입니다. 어디에 있든 이 장치를 출구 노드로 활성화하고 Tailscale을 켜면 인터넷 트래픽이 장치를 통해 라우팅됩니다.

이상적으로는 연중무휴로 전원이 켜져 있는 장치를 종료 노드로 사용하는 것이 좋습니다. 그래서 우리는 저전력 컴퓨터인 라즈베리 파이를 선택했습니다.

Pi에서 Tailscale을 실행하고 있으므로 이미 90% 정도 진행했습니다. 로컬 네트워크에 있는 최대한 많은 장치에 Tailscale을 설치하는 것도 잊지 마세요. 남은 것은 Pi가 종료 노드 역할을 하도록 허용하여 모든 인터넷 트래픽이나 LAN 트래픽이 Pi를 통해 라우팅되도록 하는 것입니다.

  • 집에 있는 로컬 네트워크 장치

  • 귀하의 집 공개 IP

  • NAS, 프린터, 카메라 등과 같은 내부 서비스

이렇게 하려면 Raspberry Pi에 SSH로 접속하고 다음 단계를 따르세요.

  • IP 전달을 활성화합니다. IP 전달을 사용하면 Raspberry Pi가 네트워크 인터페이스 간에 트래픽을 전달할 수 있습니다. 아래 명령을 한 줄씩 실행하세요:

     echo "net.ipv4.ip_forward=1" | sudo tee -a /etc/sysctl.conf
     echo "net.ipv6.conf.all.forwarding=1" | sudo tee -a /etc/sysctl.conf
     sudo sysctl -p /etc/sysctl.conf
    
  • Raspberry Pi를 종료 노드로 광고합니다.

     sudo tailscale up --advertise-exit-node
    
  • Tailscale 관리 콘솔의 머신 페이지를 엽니다.

  • 줄에서 라즈베리 파이를 찾으세요. 이름에 Exit Node 라벨이 표시되어야 합니다.

  • 옵션 메뉴를 클릭하고 경로 설정 편집을 선택하세요.

  • 종료 노드로 사용 확인란을 선택한 다음 저장하세요.

이제 모바일이나 PC 또는 설치된 모든 곳에서 Tailscale 앱을 열 때 종료 노드를 통해 인터넷을 라우팅하는 옵션이 표시됩니다. 해당 옵션이 표시되면 Raspberry Pi가 종료 노드 옵션으로 표시됩니다. 더 많은 옵션을 원할 경우 종료 노드로 더 많은 장치를 추가할 수도 있습니다.

결론

이제 다른 장치에서 Tailscale 앱을 사용하면 Raspberry Pi를 종료 노드로 선택하여 트래픽을 안전하게 라우팅할 수 있습니다. Tailscale은 또한 출구 노드 설정 및 사용을 위해 각 장치 유형에 맞는 명확한 단계별 가이드를 제공합니다.

이제 집 인터넷에서 멀리 떨어져 있어도 집에 있는 것처럼 인터넷에 연결할 수 있습니다. 다음에 또 만나요.

무료로 코딩을 배우세요. freeCodeCamp의 오픈 소스 커리큘럼은 40,000명 이상의 사람들이 개발자로 취업하는 데 도움을 주었습니다. 시작하세요