0 사전 작업
라즈베리파이에 Mosquitto가 (도커 방식이 아닌) 일반 방식으로 설치되어 있어야 합니다.
라즈베리파이에 Mosquitto 설치하기(일반 방식)1 사용자와 비밀번호 등록하기
Mosquitto를 처음 설치하면 접속 제한이 되지 않으므로 누구든지 접속할 수 있습니다. 여기서는 Mosquitto에 사용자 ID와 비밀번호를 등록하는 방법을 안내합니다.
만약 Mosquitto가 외부 네트웍에 노출된다면 최소한 사용자 ID와 비밀번호를 사용해서 접속을 통제해야 합니다.
mosquitto.conf 수정하기
mosquitto.conf에는 설정 정보가 들어 있습니다. 이 파일을 수정하기로 합니다.
다음 명령어를 실행합니다.
sudo nano /etc/mosquitto/mosquitto.conf
다음과 같은 편집 화면이 나타납니다. 이 편집 화면에서는 마우스로 커서 위치를 옮길 수 없습니다. 불편하더라도 키보드의 방향 키를 사용해야 합니다.
마지막 줄에
password_file /mosquitto/config/pwfile을 추가합니다.
이 과정은 한 번만 실행하면 됩니다.
첫 사용자 등록하기
첫 사용자를 등록하면서 패스워드가 보관되는 파일을 새롭게 만드는 과정입니다. 그래서 최초에 한 번만 실행해야 합니다. 만약 중복해서 실행하면 이전에 등록한 내용은 없어집니다.
다음 명령어로 pwfile에 user라는 사용자 ID로 첫 사용자를 등록합니다. 사용자 ID는 임의로 바꿀 수 있습니다. 명령어 실행 중간에 비밀 번호 입력을 두 번 요구합니다. 비밀번호를 입력할 때는 화면에 아무것도 보이지 않습니다. pwfile에는 비밀 번호가 암호화되어 보관되어 나중에 확인할 수 없으므로 입력된 비밀 번호를 별도로기록해 두어야 합니다.
sudo mosquitto_passwd -c /etc/mosquitto/pwfile user
사용자 추가 등록하기
다음은 pwfile에 사용자 ID user2와 비밀 번호 password2를 추가하는 예입니다. 실제 작업에서는 사용자 ID와 비밀번호는 본인의 것으로 바꾸어야 합니다. 명령어에 비밀 번호가 포함되어 있으므로 별도로 비밀 번호 입력은 요구하지 않습니다. pwfile에는 비밀 번호가 암호화되어 보관되어 나중에 확인할 수 없으므로 입력된 비밀 번호를 별도로기록해 두어야 합니다.
이 단계에서는 다른 사용자를 몇 번이든지 반복해서 등록할 수 있습니다.
sudo mosquitto_passwd -b /etc/mosquitto/pwfile user2 password2
사용자 삭제하기
다음은 pwfile에 등록된 사용자 ID user2를 삭제하는 예입니다.
sudo mosquitto_passwd -D /etc/mosquitto/pwfile user2
sudo service mosquitto restart
이 단계를 거치면 Mosquitto에 접속할 때 사용자 ID와 비밀 번호를 제시하여야 합니다.