
wpa_passphrase
에 대한 네트워크 로그인 정보를 생성합니다 wpa_supplicant.conf
. 재시작 시 엔트로피를 저장하는 wpa_supplicant
옵션이 있습니다 .-e
나는 더 많은 연결을 만드는 방법으로 내부에 저장된 엔트로피를 이해합니다.안전한, 공격자가 정확하게 추측하기 어렵기 때문입니다.
이 옵션은 -e
수동으로 호출할 때 잘 작동 wpa_supplicant
하지만 Raspberry Pi는 wpa_supplicant
시작 시 이미 서비스를 호출하므로 이를 유지하고 싶습니다.
- RasPi(Raspbian GNU/Linux 11 실행)의 기본 엔트로피 저장소는 어디에 있습니까?
- RPi의 어디에서 서비스 위치를 구성할 수 있나요
wpa_supplicant
? - 에서 그렇게 할 수 있나요
/etc/wpa_supplicant/wpa_supplicant.conf
?
답변1
wpa_passphrase는 wpa_supplicant.conf에 대한 네트워크 로그인 정보를 생성합니다. wpa_supplicant는 재시작 시 엔트로피를 저장하기 위해 -e 옵션을 사용합니다.
이 둘은 서로 아무 관련이 없습니다. wpa_supplicant.conf에 저장된 정보는 결정적입니다. "psk=" 매개변수는 엄격하게 암호 문구와 네트워크 SSID의 PBKDF2 해시입니다.
나중에 엔트로피(임의 데이터)가 필요합니다. 모든 인증 핸드셰이크 중에 두 가지가 모두 필요합니다.
나는 내부에 저장된 엔트로피를 공격자가 정확하게 추측하기 어렵기 때문에 연결을 보다 안전하게 만드는 방법으로 이해합니다.
예, 하지만 그보다 약간 더 많은 이야기가 있습니다.
대부분의 Linux 시스템에서 프로그램은OS에 물어보세요고품질 무작위 데이터의 경우, 예를 들어 /dev/[u]random 가상 장치에서 읽거나 getentropy() 시스템 호출을 사용합니다. wpa_supplicant가 자체 내부 저장소를 갖는 이유는 아래 설명과 같이 더 구체적입니다.
RasPi(Raspbian GNU/Linux 11 실행)의 기본 엔트로피 저장소는 어디에 있습니까?
OS에서 제공하는 무작위 데이터 기능에는 기본적으로 영구적인 "엔트로피 저장소"가 없습니다. 엔트로피 풀은 부팅할 때마다 다양한 하드웨어 소스의 데이터를 사용하여 새로 초기화됩니다.
그러나 문제는 하드웨어 플랫폼에 엔트로피를 수집할 수 있는 좋은 소스가 없을 때 발생합니다(예: Raspberry Pi에는 실시간 시계가 없습니다. 많은 Linux 기반 액세스 포인트는 외부 입력이 거의 없는 작은 SoC입니다). , 이 경우 엔트로피 풀 초기화에 시간이 걸릴 수 있습니다.긴시간. 일부 Linux 배포판에서는 해당 목적을 위해 OS 전체의 "엔트로피 저장소" 파일(보통 /var/lib 어딘가)을 추가하여 프로그램이 해당 시스템에서 /dev/[u]random을 계속 사용할 수 있도록 합니다.
(이것은 /dev/random과 /dev/urandom이 다르게 작동하는 이전 Linux 버전에서 특히 문제가 되었습니다. 전자에서 읽으면 OS "엔트로피 풀"이 빠르게 고갈되어 프로그램이 대기하게 되는 반면 후자는 낮은 엔트로피 풀을 제공할 수 있습니다. 너무 일찍 읽으면 품질이 좋은 무작위 데이터입니다.)
따라서 wpa_supplicant의 내부 엔트로피 풀과 "엔트로피 파일" 옵션은 특별히 다음과 같은 시스템에서 사용하기 위한 것입니다.하지 마라저렴한 MIPS 기반 SoC와 같이 OS 전체에 걸쳐 작동하는 엔트로피 풀이 있어야 합니다. (wpa_supplicant는 액세스 포인트를 구축하는 데 사용되는 "hostapd" 프로젝트에서 제공됩니다.) 일반적으로 -e
일반 Linux 시스템에서는 이 옵션을 사용할 필요가 없습니다 .
또한 Raspberry Pi에서 systemd 기반 Linux 배포판을 실행하는 경우 시작 시 OS 엔트로피 풀 초기화를 돕기 위해 이미 /var/lib/systemd/random-seed를 사용하고 있습니다(그리고 아마도 개선된 최신 커널을 실행 중일 것입니다) 엔트로피 수집에도 사용됩니다).
RPi의 어디에서 wpa_supplicant 서비스에 대한 위치를 구성할 수 있습니까?
옵션을 구성합니다.~에wpa_supplicant 서비스.
systemd를 사용하여 Linux를 실행하는 경우 systemctl cat
서비스 정의를 살펴보는 데 사용하세요. 라인 ExecStart=
은 구체적으로. 배포에 따라 두 가지 옵션이 있습니다.
때로는 구성된 명령줄에
$WPA_ARGS
. 이는 동일한 서비스 정의(일반적으로 /etc/default/ 또는 /etc/sysconfig/에 있음)의 EnvironmentFile= 설정에 지정된 파일에서 나오므로 해당 파일을 편집하고systemctl daemon-reload
.그렇지 않은 경우도 있으며 모든 옵션은 ExecStart= 매개변수에 직접 정의됩니다. 이 경우
systemctl edit --full wpa_supplicant
직접 편집하려면 실행하세요. 사용자 정의된 서비스 파일은 /etc/systemd/system/에 저장되어 배포 파일을 재정의합니다.