본문으로 건너뛰기
블로그›2026. 8. 27.

윈도우에 MQTT 브로커 설치하기: Mosquitto 웹소켓과 계정 인증까지

윈도우에 MQTT 브로커 설치하기: Mosquitto 웹소켓과 계정 인증까지

MQTT로 PLC 데이터를 주고받으려면 브로커가 반드시 하나 있어야 합니다. 발행하는 쪽과 구독하는 쪽이 서로를 직접 아는 것이 아니라, 둘 다 브로커에 붙어 메시지를 주고받는 구조이기 때문입니다.

브로커라고 하면 별도 서버를 떠올리기 쉽지만, 윈도우 PC에서도 충분히 돌아갑니다. 사무실에 항상 켜 두는 PC가 한 대 있다면 그것으로 시작하실 수 있습니다.

이 글에서는 Mosquitto 설치부터 웹소켓 활성화와 계정 인증 적용까지 전 과정을 다룹니다.

시작하기 전에

항목내용
대상윈도우 PC (상시 전원 권장)
설치 프로그램Mosquitto
검증 도구MQTT Explorer
필요 권한관리자 권한 (설정 파일 수정에 필요)

사내 PC에 설치하실 때는 방화벽에서 사용할 포트를 열어 주셔야 다른 장비가 접속할 수 있습니다.

Step 1. 설치 파일 다운로드

Mosquitto 공식 다운로드 페이지에서 설치 파일을 받습니다.

Mosquitto 공식 다운로드 페이지

다운로드 후 파일을 실행하면 기본 경로인 C:\Program Files\mosquitto 에 설치됩니다.

Mosquitto 설치 진행 화면

Step 2. 설정 파일 수정

Mosquitto는 설치만으로 바로 사용할 수 있습니다. 하지만 기본 설정 그대로 쓰시면 안 되는 이유가 두 가지 있습니다.

  1. 포트 1883만 열려 있고 웹소켓이 꺼져 있습니다. 브라우저 기반 대시보드에서 접근할 수 없습니다.
  2. 누구나 접속할 수 있습니다. 인증이 없어 같은 네트워크에 있는 누구든 토픽을 구독하거나 값을 쓸 수 있습니다.

두 번째는 특히 중요합니다. 제어용 토픽이 열려 있으면 외부에서 설비에 값을 쓸 수 있다는 뜻입니다. 반드시 인증을 걸어 두십시오.

메모장 관리자 권한 실행

mosquitto.conf 파일 선택

윈도우 검색에서 메모장을 찾아 관리자 권한으로 실행합니다. 일반 권한으로 열면 저장이 되지 않습니다.

파일 열기로 C:\Program Files\mosquitto 로 이동하고, 파일 형식을 모든 파일로 변경한 뒤 mosquitto.conf 를 선택합니다.

파일이 열리면 가장 하단에 다음 내용을 추가하고 저장합니다.

# 기본 MQTT 포트
listener 1883
# 추가 MQTT 포트
listener 1890
# 웹소켓 포트
listener 9009
protocol websockets
# 익명 접속 금지
allow_anonymous false
# 비밀번호 파일
password_file C:\Program Files\mosquitto\passwd.txt

각 설정이 하는 일

설정역할
listener 1883MQTT 기본 포트. 대부분의 클라이언트가 사용합니다.
listener 1890보조 포트. 장비군을 포트로 구분하고 싶을 때 씁니다.
listener 9009 + protocol websockets브라우저에서 MQTT를 쓰기 위한 웹소켓 포트입니다.
allow_anonymous false계정 없이 접속하는 것을 막습니다.
password_file계정 정보를 담을 파일 경로입니다.

allow_anonymous false 를 넣으면 계정 파일을 만들기 전까지는 아무도 접속할 수 없습니다. 순서상 당연하지만, 설정만 넣고 계정을 안 만든 채 "접속이 안 된다"고 하시는 경우가 많습니다.

계정 생성 명령 실행

비밀번호 파일 생성 확인

Mosquitto 서비스 설정

Step 3. 실행 확인

Mosquitto 실행 및 포트 출력 확인

Mosquitto가 정상적으로 실행되는지 확인합니다. 정상 실행 시 예시 이미지처럼 열린 포트 번호가 출력됩니다.

여기까지 오면 MQTT 브로커 설치가 완료되어 PC가 MQTT 서버로 동작합니다.

포트가 출력되지 않고 오류가 난다면 대부분 mosquitto.conf 의 오타입니다. 특히 경로에 공백이 있는 C:\Program Files\... 부분을 확인하십시오.

Step 4. MQTT Explorer로 접속 검증

MQTT Explorer는 MQTT 통신 상태를 실시간으로 확인할 수 있는 대표적인 무료 모니터링 도구입니다. 브로커에 접속해 토픽 목록, 발행 메시지, 구독 현황을 한눈에 볼 수 있어 설정 검증에 유용합니다.

MQTT Explorer 접속 정보 입력 화면

접속 정보는 다음과 같이 입력합니다.

  • Name — 접속 이름 (자유롭게 설정)
  • Protocol — 포트가 1883 또는 1890이면 mqtt://, 9009(웹소켓)이면 ws://
  • Host — MQTT 브로커를 설치한 PC의 IP
  • Port — Protocol 설정에 맞는 포트 번호
  • Username / Password — 앞에서 설정한 계정과 비밀번호

본인 PC에 브로커를 설치하고 같은 PC에서 확인하는 경우, Host에는 본인 PC IP · localhost · 127.0.0.1 세 가지 모두 사용 가능합니다.

MQTT Explorer 정상 접속 화면

정상 접속 화면입니다. 여기까지 확인되면 EASY-LINK를 이 브로커에 연결하실 준비가 된 것입니다.

잘 안 될 때 확인할 것

  1. 저장이 안 된다 — 메모장을 관리자 권한으로 실행하셨는지 확인합니다.
  2. 실행하면 바로 종료된다 — mosquitto.conf 문법 오류입니다. 방금 추가한 부분을 지우고 하나씩 다시 넣어 보시면 원인이 좁혀집니다.
  3. 접속이 거부된다 — 계정 파일이 만들어졌는지, password_file 경로가 실제 파일 위치와 같은지 확인합니다.
  4. 다른 PC에서만 접속이 안 된다 — 윈도우 방화벽에서 1883 · 1890 · 9009 포트를 열어 주십시오.
  5. 웹소켓만 안 된다 — protocol websockets 가 9009 listener 바로 아래에 있는지 확인합니다. 순서가 중요합니다.
  6. PC를 껐다 켜면 멈춘다 — 서비스로 등록해 자동 시작되도록 설정하십시오.

운영할 때 챙길 것

브로커는 한 번 세워 두면 잊기 쉬운 구성 요소입니다. 그런데 브로커가 멈추면 수집도 제어도 전부 멈춥니다. 아래 정도는 챙겨 두시기를 권합니다.

  • 상시 전원과 자동 시작 — 정전 후 PC가 켜지면 브로커도 자동으로 올라와야 합니다.
  • 계정 분리 — 읽기 전용 계정과 쓰기 가능 계정을 나누면 사고를 줄일 수 있습니다.
  • 외부 개방 여부 — 인터넷에 직접 열어야 한다면 반드시 암호화(TLS)를 함께 검토하십시오.
  • 저장은 별도로 — 브로커는 메시지를 중계할 뿐 이력을 쌓지 않습니다. 데이터를 남기려면 데이터베이스 저장 구성이 따로 필요합니다.

도입을 검토하신다면

이 글의 구성은 EASY-LINK 시리즈만 있으면 그대로 재현할 수 있습니다. 현장 조건에 맞는 모델 선정이나 프로토콜 적용 가능 여부가 궁금하시면 문의해 주세요. 사용 중인 PLC 기종과 수집하려는 데이터만 알려주시면 구성안을 잡아 드립니다.

관련 글

← 목록으로 돌아가기