게이트웨이 설정

NAS에 문을 달아 주세요.

게이트웨이는 집에서 실행되는 Loft의 작은 구성 요소예요. 앱은 게이트웨이와 통신하고, 게이트웨이는 사용자 본인의 계정으로 로그인해 NAS와 통신해요. 10분 정도 걸리고, 한 번만 하면 돼요.

준비물

  • 항상 켜져 있고 NAS와 같은 네트워크에 있는 Linux 머신: x86_64 또는 arm64, Python 3.12 이상. Debian 13, Ubuntu 24.04, 최신 Raspberry Pi OS에는 이 버전이 들어 있어요. 이전 시스템에서는 컨테이너를 사용하세요. 64비트 Raspberry Pi도 괜찮아요. 가능하면 다른 용도로 쓰지 않는 머신을 사용하세요(보안 참고).
  • SMB 3으로 폴더를 공유하는 NAS 또는 서버, 그리고 네트워크에서의 NAS 주소.
  • NAS 사용자 이름과 비밀번호. 게이트웨이 설정이 아니라, 나중에 앱에 입력해요.
  1. 설치

    곧 출시돼요. 게이트웨이는 아직 다운로드할 수 없어요. 출시되면 .deb 패키지와 컨테이너 이미지가 다운로드 페이지에 올라오고, 설치 명령어도 바로 여기에 안내할게요.

  2. NAS 지정하기

    loft-gateway init을 실행하세요. NAS 주소를 묻고, 설정 파일을 작성하고, 게이트웨이의 키를 생성해요. 마지막에는 페어링 코드를 보여 줘요.

    그다음 loft-gateway doctor를 실행하세요. 게이트웨이가 NAS에 연결할 수 있는지, NAS가 어떤 SMB 버전과 암호화를 제공하는지, 시계가 정확한지, 인증서가 유효한지 확인해요. 문제가 있으면 무엇이 문제인지 알려 줘요. --user와 NAS 사용자 이름을 추가하면 로그인과 공유 폴더도 확인해요. 비밀번호를 묻지만 절대 출력하지는 않아요.

    SMB 암호화를 지원하지 않는 오래된 NAS인가요? 기본적으로 게이트웨이는 암호화 없이는 연결을 거부해요. 설정 파일에 smb_encryption = "server"를 넣으면 NAS가 대신 결정하고, 홈 네트워크에서의 연결은 NAS가 요구할 때만 암호화돼요. 선택은 사용자의 몫이에요.

  3. 앱 페어링하기

    loft-gateway pair를 실행하고 Loft 앱으로 QR 코드를 스캔하거나, 기기에서 링크를 여세요. 코드에 게이트웨이의 주소와 키가 들어 있어서, 앱은 처음 연결할 때부터 내 게이트웨이와 통신하고 있다는 걸 알아요. 그다음 NAS 사용자 이름과 비밀번호로 로그인하세요.

    게이트웨이 주소를 입력하는 칸은 일부러 없앴어요. 직접 입력한 주소 때문에 비밀번호를 수집하는 가짜 게이트웨이로 연결될 수 있기 때문이에요. 꼭 필요하다면 앱의 페어링 화면에 수동으로 설정이 있어요.

  4. 외부에서 사용하기(선택 사항)

    집에서는 더 할 일이 없어요. 집 밖에서 Loft를 쓰려면 다음 중 하나를 고르세요.

    • 터널: 예를 들어 Cloudflare Tunnel. 공유기에 포트를 열 필요는 없지만, 터널 제공업체가 트래픽을 읽을 수 있고, 로그인은 집에서 해야 해요.
    • 직접 연결: 공유기에서 게이트웨이로 포트를 포워딩해요. 종단 간 암호화되고, 어디서나 로그인할 수 있어요. 게이트웨이가 로그인 시도 횟수를 제한해요.

    차이점은 작동 방식에서 설명해요. 설정을 바꾼 뒤에는 loft-gateway pair를 다시 실행해서 코드에 새 주소가 들어가게 하세요.

Loft에 표시되는 범위 제한하기(선택 사항)

Loft에는 NAS 계정으로 열 수 있는 모든 공유 폴더가 표시되고, 나머지는 NAS 자체의 권한이 결정해요. 설정 파일에서 범위를 더 좁힐 수 있어요. 일부 공유 폴더만 표시하거나, 특정 폴더나 경로를 숨기거나, 일부 사용자만 허용할 수 있어요. 이 설정은 모두 기본적으로 비어 있어요.

업데이트

게이트웨이는 절대 스스로 업데이트하지 않아요. 릴리스 노트를 읽은 다음 새 .deb 패키지를 설치하거나 새 컨테이너 이미지를 받으세요. → 릴리스 노트와 체크섬은 소스 코드에 있어요.