{"id":2738,"date":"2024-12-11T13:42:51","date_gmt":"2023-01-11T01:36:07","guid":{"rendered":""},"modified":"2025-02-02T00:46:19","modified_gmt":"2025-02-01T23:46:19","slug":"how-to-install-mosquitto-mqtt-server-on-ubuntu-22-04","status":"publish","type":"post","link":"https:\/\/netcloud24.com\/knowledgebase\/how-to-install-mosquitto-mqtt-server-on-ubuntu-22-04\/","title":{"rendered":"Linux VPS &#038; VPS Windows Setup Guide | NetCloud24 Mosquitto MQTT Server on Ubuntu 22.04"},"content":{"rendered":"<p>\u00a0<\/p>\n<\/p>\n<header>\n<h1>\u00a0<\/h1>\n<\/header>\n<article>\n<p><strong>Mosquitto<\/strong> is a popular, lightweight open-source message broker that implements the MQTT (Message Queuing Telemetry Transport) protocol, ideal for IoT devices and real-time communication. In this guide, we will walk you through how to install Mosquitto MQTT Server on <strong>Ubuntu 22.04<\/strong>. For optimal performance and scalability, hosting Mosquitto on a  will ensure your message broker runs efficiently using the dedicated resources of a <strong>VPS server<\/strong>.<\/p>\n<h2>Step 1: Update Your VPS Server<\/h2>\n<p>Before installing Mosquitto, make sure your <a href=\"https:\/\/ie.netcloud24.com\">VPS server<\/a> is up to date. Run the following commands to update your system:<\/p>\n<pre><code>sudo apt update &amp;&amp; sudo apt upgrade -y<\/code><\/pre>\n<p>Using a <strong>Windows VPS<\/strong> ensures that your Mosquitto server benefits from better performance and reliability, making it ideal for handling IoT device communications.<\/p>\n<h2>Step 2: Install Mosquitto<\/h2>\n<p>Mosquitto is available in the default Ubuntu repositories, so you can install it easily using the following commands:<\/p>\n<pre><code>sudo apt install mosquitto mosquitto-clients -y<\/code><\/pre>\n<p>The <code>mosquitto-clients<\/code> package installs command-line tools like <code>mosquitto_pub<\/code> and <code>mosquitto_sub<\/code> for publishing and subscribing to messages.<\/p>\n<h2>Step 3: Start and Enable the Mosquitto Service<\/h2>\n<p>Once installed, you can start the Mosquitto service and enable it to run at boot using these commands:<\/p>\n<pre><code>\r\nsudo systemctl start mosquitto\r\nsudo systemctl enable mosquitto\r\n<\/code><\/pre>\n<p>To check if Mosquitto is running properly, use:<\/p>\n<pre><code>sudo systemctl status mosquitto<\/code><\/pre>\n<h2>Step 4: Configure Mosquitto<\/h2>\n<p>The default Mosquitto configuration works out of the box, but you can customize it to fit your requirements. The main configuration file is located at <code>\/etc\/mosquitto\/mosquitto.conf<\/code>. Open it with your preferred editor:<\/p>\n<pre><code>sudo nano \/etc\/mosquitto\/mosquitto.conf<\/code><\/pre>\n<p>In this file, you can configure options such as authentication, access control, or listening ports. Once you&#8217;ve made your changes, save the file and restart the Mosquitto service:<\/p>\n<pre><code>sudo systemctl restart mosquitto<\/code><\/pre>\n<h2>Step 5: Allow Mosquitto Through the Firewall<\/h2>\n<p>If your VPS server has a firewall enabled, you will need to allow Mosquitto traffic through port 1883 (the default MQTT port) and 8883 (for secure MQTT over TLS\/SSL). Run the following commands to allow this traffic:<\/p>\n<pre><code>\r\nsudo ufw allow 1883\r\nsudo ufw allow 8883\r\nsudo ufw reload\r\n<\/code><\/pre>\n<h2>Step 6: Test Mosquitto MQTT<\/h2>\n<p>Now that Mosquitto is running, you can test it using the <code>mosquitto_pub<\/code> and <code>mosquitto_sub<\/code> commands. In one terminal, run the following command to subscribe to a test topic:<\/p>\n<pre><code>mosquitto_sub -h localhost -t \"test\/topic\"<\/code><\/pre>\n<p>In another terminal, publish a message to the same topic:<\/p>\n<pre><code>mosquitto_pub -h localhost -t \"test\/topic\" -m \"Hello MQTT!\"<\/code><\/pre>\n<p>You should see the message appear in the first terminal where you are subscribed to the topic.<\/p>\n<h2>Step 7: Secure Mosquitto with Passwords (Optional)<\/h2>\n<p>For production environments, it\u2019s important to secure your Mosquitto server with passwords. You can create a password file by running the following command:<\/p>\n<pre><code>sudo mosquitto_passwd -c \/etc\/mosquitto\/passwd myuser<\/code><\/pre>\n<p>You will be prompted to set a password for the <code>myuser<\/code> account. Then, edit the <code>mosquitto.conf<\/code> file to enable password authentication:<\/p>\n<pre><code>\r\nsudo nano \/etc\/mosquitto\/mosquitto.conf\r\n<\/code><\/pre>\n<p>Add the following lines to the configuration:<\/p>\n<pre><code>\r\nallow_anonymous false\r\npassword_file \/etc\/mosquitto\/passwd\r\n<\/code><\/pre>\n<p>Save the file and restart Mosquitto:<\/p>\n<pre><code>sudo systemctl restart mosquitto<\/code><\/pre>\n<h2>Step 8: Optimize Your VPS Server for Mosquitto<\/h2>\n<p>To ensure that your Mosquitto server handles high traffic efficiently, hosting it on a <a href=\"https:\/\/ie.netcloud24.com\">Windows VPS&lt;\/ <\/a><\/p>\n<\/article>\n<div class=\"post-author-box\" style=\"border-top:1px solid #ddd;margin-top:20px;padding-top:15px;\">\n<p><strong>Author:<\/strong> \u0141ukasz Bodziony<\/p>\n<p><strong>Website:<\/strong> <a href=\"https:\/\/ca.netcloud24.com\" target=\"_blank\" rel=\"dofollow\">Windows VPS<\/a><\/p>\n<p><em>\u0141ukasz Bodziony is the CEO and founder of <a href=\"https:\/\/netcloud24.com\" target=\"_blank\" rel=\"dofollow\">NETCLOUD24<\/a>, a global VPS hosting brand proudly originating from Poland. With extensive experience in cloud computing, virtualization, and server management, he delivers high-performance <strong>Windows VPS<\/strong> and <strong>Remote Desktop Services (RDS)<\/strong> solutions to clients across Europe, North America, and beyond.<\/em><\/p>\n<p><em>His expertise covers a wide range of technologies, including <strong>Microsoft Azure<\/strong>, <strong>Proxmox VE<\/strong>, <strong>Amazon Web Services (AWS)<\/strong>, and numerous other virtualization and cloud platforms.<\/em><\/p>\n<p><em>Beyond running his hosting business, \u0141ukasz also provides <strong>professional paid server configuration and optimization services<\/strong> for companies and individuals. Outside of work, he is dedicated to caring for his children and building a secure future for them.<\/em><\/p>\n<p><em>If you are interested in working with him or need expert assistance with your hosting, cloud environment, or server setup, feel free to reach out via <a href=\"https:\/\/ca.netcloud24.com\" target=\"_blank\" rel=\"dofollow\">Windows VPS<\/a>.<\/em><\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u00a0 \u00a0 Mosquitto is a popular, lightweight open-source message broker that implements the MQTT (Message Queuing Telemetry Transport) protocol, ideal for IoT devices and real-time communication. In this\u2026<\/p>\n","protected":false},"author":1,"featured_media":3421,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_seopress_robots_primary_cat":"","_seopress_titles_title":"","_seopress_titles_desc":"","_seopress_robots_index":"","footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[],"tags":[14,12,11,23,20,21,22,17,7,8,6,10,18,19,15,24,16,5,13,9],"class_list":["post-2738","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-cheapvps","tag-cloudvps","tag-hostingvps","tag-rds","tag-rdscal","tag-remotedesktop","tag-remotedesktopvps","tag-servervps","tag-ukvps","tag-virtualserver","tag-vpshosting","tag-vpsserver","tag-vpssolutions","tag-vpswindows","tag-vpswithwindows","tag-windowsrds","tag-windowsserver","tag-windowsvps","tag-windowsvpshosting","tag-windowsvpsuk"],"jetpack_publicize_connections":[],"_links":{"self":[{"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/posts\/2738","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/comments?post=2738"}],"version-history":[{"count":0,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/posts\/2738\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/media\/3421"}],"wp:attachment":[{"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/media?parent=2738"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/categories?post=2738"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/tags?post=2738"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}