부팅 후 곧바로 서비스가 실행되어야 하는 환경에서 'Unlock Login Keyring' 팝업이 뜨면서 흐름이 멈춰버리면 아주 난감하죠.

이 현상은 라즈베리파이를 '자동 로그인(Auto-login)' 상태로 설정해 두었을 때 발생합니다. 사용자가 직접 비밀번호를 치고 들어오지 않았기 때문에, OS가 Wi-Fi 비밀번호가 저장된 '키링(보안 금고)'을 자동으로 열지 못해 수동으로 암호를 물어보는 것입니다.

무인 출결 관리기처럼 터치 기반의 키오스크 모드로 원활하게 자동화 운영을 하기 위해, 이 팝업을 영구적으로 없애는 두 가지 방법을 안내해 드립니다.

1. Wi-Fi 프로필을 '시스템 전체 권한'으로 변경 (가장 추천)

키링의 보안 기능은 그대로 살려두면서, Wi-Fi 연결만 키링을 거치지 않도록 권한을 풀어주는 가장 깔끔하고 안전한 방법입니다.

앞서 설정하셨던 터미널을 열고 아래 명령어를 입력하여, 해당 Wi-Fi 프로필(preconfigured)을 특정 사용자가 아닌 '시스템 전체'가 사용할 수 있도록 권한 제한을 없앱니다.

sudo nmcli connection modify preconfigured connection.permissions ""
sudo systemctl restart NetworkManager

이제 재부팅해도 네트워크 관리자가 사용자 키링을 참조하지 않고 루트 권한으로 바로 Wi-Fi를 연결합니다.


2. 키링 비밀번호 자체를 '공백(빈칸)'으로 변경 (완전 차단)

만약 Wi-Fi뿐만 아니라 부팅 직후 자동으로 실행되는 크로미움(Chromium) 브라우저 등에서도 키링 팝업이 뜬다면, 아예 키링의 비밀번호를 없애버리는 것이 좋습니다.

  1. 라즈베리파이 데스크톱 환경의 터미널에서 아래 명령어로 키 관리 도구를 설치합니다.
    sudo apt update
    sudo apt install seahorse -y
    
  2. 라즈베리파이 시작 메뉴 > [기본 설정(Preferences)] > **[암호 및 키(Passwords and Keys)]**를 실행합니다.
  3. 왼쪽 목록에서 '로그인(Login)' 또는 **'기본 키링(Default Keyring)'**을 마우스 우클릭하고 **[암호 변경]**을 선택합니다.
  4. '이전 암호'에는 현재 라즈베리파이 로그인 비밀번호를 입력합니다.
  5. '새 암호'와 '암호 확인' 칸은 아무것도 입력하지 않고(빈칸 상태로) [계속]을 누릅니다.
  6. 암호화되지 않은 상태로 저장하겠냐는 경고 창이 뜨면 **[계속]**을 눌러 동의합니다.

이 방식을 적용하면 키링 내부의 데이터가 암호화되지 않고 평문으로 저장되는 트레이드오프가 발생합니다. 정보보호 체계를 총괄하시는 기준에서, 이 라즈베리파이가 배치되는 장소의 물리적 접근 통제 수준을 한 번 더 고려하여 적용해 주시면 완벽할 것 같습니다.

Posted by 천칭
,

라즈베리파이로 웹 서버를 운영하실 때 네트워크 환경이 자꾸 바뀌면 정말 난감하죠. 클라이언트 접속이 끊어지니 서비스 안정성 면에서 반드시 짚고 넘어가야 할 부분입니다.

라즈베리파이 5의 기본 OS(Bookworm)부터는 네트워크 관리 도구가 기존의 dhcpcd에서 NetworkManager로 변경되었습니다. 따라서 맥북 터미널에서 SSH로 라즈베리파이에 접속하신 후, nmcli 명령어를 사용하여 원치 않는 SSID 정보 삭제고정 IP 할당을 설정해 주시면 이 문제를 깔끔하게 해결할 수 있습니다.

 

1. 저장된 모든 Wi-Fi 프로필 확인

먼저 라즈베리파이에 저장된 모든 네트워크 연결 기록을 확인합니다.

 

nmcli connection show

이 명령어를 입력하면 NAME 항목 아래에 그동안 연결했던 SSID 목록들이 나타납니다.

 

2. 원치 않는 SSID 프로필 삭제

서버가 임의로 연결되면 안 되는 다른 SSID들을 모두 삭제하여, 물리적으로 해당 AP에 접속할 시도조차 하지 않도록 원천 차단합니다.

 

sudo nmcli connection delete "삭제할_SSID_이름"

목표로 하는 단 하나의 SSID만 남을 때까지 사용하지 않는 프로필들을 모두 지워주세요.

 

3. 고정 IP 설정 (DHCP 문제 해결)

하나 남은 목표 SSID에 연결될 때 항상 지정된 IP만 받도록 고정 IP(Static IP)를 설정합니다. (아래 IP 주소는 현재 사용 중이신 공유기 환경 대역에 맞춰 수정해 주세요.)

 

# 고정할 IP 주소와 서브넷 마스크 설정
sudo nmcli connection modify "목표_SSID_이름" ipv4.addresses 192.168.0.100/24

# 게이트웨이(공유기 IP) 설정
sudo nmcli connection modify "목표_SSID_이름" ipv4.gateway 192.168.0.1

# DNS 서버 설정 (구글 DNS 예시)
sudo nmcli connection modify "목표_SSID_이름" ipv4.dns "8.8.8.8,8.8.4.4"

# IP 할당 방식을 수동(Manual)으로 변경
sudo nmcli connection modify "목표_SSID_이름" ipv4.method manual

 

4. 네트워크 재시작 및 적용

설정을 마쳤다면 네트워크 연결을 재시작하여 변경 사항을 적용합니다. 이때 기존 동적 IP로 연결되어 있던 SSH 세션이 끊어질 수 있으므로, 새로 설정한 고정 IP로 다시 접속하셔야 합니다.

 
sudo nmcli connection up "목표_SSID_이름"

이렇게 세팅해 두시면 라즈베리파이가 재부팅되거나 일시적으로 Wi-Fi 신호가 약해지더라도 오직 지정된 AP에만, 항상 동일한 고정 IP로 연결되므로 클라이언트 서비스가 안정적으로 유지됩니다.

Posted by 천칭
,

1. rclone 설치 및 초기 설정

먼저 라즈베리 파이에 rclone을 설치하고 OneDrive 계정을 연결해야 합니다.

rclone 설치

터미널에서 아래 명령어를 입력합니다.

Bash
 
sudo apt update
sudo apt install rclone

OneDrive 원격 연결 설정 (Remote Config)

설정을 시작하려면 rclone config를 입력합니다.

  1. n) New remote를 선택합니다.
  2. 이름은 onedrive (혹은 원하는 이름)로 입력합니다.
  3. 서비스 목록에서 Microsoft OneDrive를 찾아 해당 번호를 입력합니다.
  4. client_idclient_secret은 그냥 엔터(빈칸)로 넘어가도 무방합니다.
  5. Edit advanced config?n을 선택합니다.
  6. Use auto config?: 라즈베리 파이는 보통 GUI 브라우저가 없으므로 n을 선택합니다.
    • 이때 화면에 표시되는 rclone authorize "onedrive" 명령어를 **웹 브라우저가 있는 PC(윈도우나 맥)**의 터미널/명령 프롬프트에서 실행해야 합니다.
    • PC 브라우저에서 로그인 후 나타나는 **결과 코드(JSON 형태)**를 복사하여 라즈베리 파이 터미널에 붙여넣습니다.
  7. Choose drive type: 보통 1) OneDrive Personal or Business를 선택합니다.
  8. 드라이브 목록이 나오면 본인의 드라이브를 선택하고 설정을 마칩니다.

2. 이미지 가져오기 (동기화 및 복사)

설정이 완료되었다면 이제 명령어를 통해 이미지를 가져올 수 있습니다.

특정 폴더 복사하기 (copy)

OneDrive의 Photos 폴더에 있는 파일들을 라즈베리 파이의 /home/pi/images 폴더로 가져오는 방법입니다.

Bash
 
rclone copy onedrive:Photos /home/pi/images

특정 폴더 동기화하기 (sync)

OneDrive와 라즈베리 파이 폴더를 완전히 동일하게 맞춥니다. (라즈베리 파이에만 있는 파일은 삭제될 수 있으니 주의하세요.)

Bash
 
rclone sync onedrive:Photos /home/pi/images

3. 자동화를 위한 팁

매번 명령어를 입력하기 번거롭다면 **크론탭(Crontab)**을 활용해 주기적으로 실행할 수 있습니다.

  1. crontab -e 명령어를 입력합니다.
  2. 파일 하단에 아래 내용을 추가합니다 (매시간 0분에 동기화 수행).
  3. Bash
     
    0 * * * * /usr/bin/rclone sync onedrive:Photos /home/pi/images
    

주의사항

  • 경로 확인: OneDrive 상의 폴더명에 공백이 있다면 "onedrive:My Photos"와 같이 따옴표로 감싸주세요.
  • 네트워크: 파일 용량이 클 경우 초기 동기화에 시간이 오래 걸릴 수 있습니다.
Posted by 천칭
,