How to setup your own secure IoT cloud server



this video provides an introduction on how to set up a secure Internet of Things or IOT cloud server most IOT cloud server solutions whether they provide ready to use hosted services or not are based on a standard virtual private server or VPS most developers probably think of services from Amazon or Microsoft Azure when considering the server side of their IOT solution these high-end services are great if you need to scale up to millions of connected devices however for small scale operations and DIY projects a low-cost VPS is more than adequate this video is accompanied by several written tutorials that you can find by navigating to the maiko's server site and clicking on the iot tab we will not follow all steps but we will rather focus on setting up the actual cloud server solution refer to the written tutorials for the additional steps that you must perform in order to set up a complete secure IOT solution click on the link cloud server tutorial this takes us to the blog post that explains how to setup the server side for the IOT solution the first step we will perform is to register a domain name we will select a free domain registrar but you can choose any paid for solution if you require a domain name that ends with com or any other non free top domain name sign up for free nob if you choose a free domain name since we have already signed up for free knob we can directly register a domain name notice that we select a domain name ending in dot TK dot t– k is one of several free top domains enter the domain name you want and if it is available complete the registration process we also need to configure the DNS for the domain but this will have to wait until we have signed up for a virtual private server service you let us navigate back to the iot-cloud or tutorial scroll up to the instructions for signing up for VPS service and click the Barry link the Barry website opens in a new tab scroll down and click the blue Barry plan the host name should be the name you register on the free Nam website in our case the name is mega toaster TK we will not be using the NS prefix thus you can fill in any name in these two fields but note that they are required the password is for the VPSs web-based control interface and for logging into the online server using SSH on the shopping cart page click checkout on the shopping carts checkout page fill in all information and select a payment method click complete order to finish the registration process after sometime you will get an email from berry servers with information that enables you to log into the web-based control panel and to remotely log into the virtual private server by using an SSH client notice the hostname is set to make a toaster dot TK but this domain name will not work since we have not set up the DNS on the free Nam website copy the server's IP address and navigate to the free Nam website on the free Nam website navigate to my domains click manage domain on the domain you just registered click manage free nom DNS paste in the virtual it's server's IP address you copied from the email click more records and paste in the IP address again the name field should be WW this makes sure your server can be accessed by either domain name or wwo main name click Save Changes open a command window and the command ping domain name note that it may take up to 48 hours before the DNS for your domain name works but it usually takes just a few minutes as you can see from our tests the domain name is working as it looks up the IP address of the VPS navigate back to the email you received from Bury servers and click the control panel access URL login to the control panel by using the credentials provided in the email click the reinstall button scroll down to Debian 8 minimal and select it scroll down to the end of the page and click the reinstall button the reinstallation process takes a few minutes and is usually much faster than the ten minutes stated on the control panel let us navigate back to the iot-cloud server tutorial scroll down to the instructions for installing the Mako server and the smq broker we will use the automatic option in this video the exact installation options are explained in the tutorial all you have to do is copy the commands by clicking the list of commands and pressing ctrl C on your keyboard the next step is to connect it to the line server using an ssh client we are using putty on windows start putty and enter the domain name you registered enter the credentials provided in the email you received from Barry servers the user is route and the password will be the password you set when you signed up for the VPS service paste in the commands you copied from the iot-cloud server tutorial this will start the Mako server installation process enter a username and password when prompted the user name and password protects the web DAV instance that is automatically configured by the installation script the installation script creates the file Mako dot conf sea the Mako server website for more information on the Mako servers configuration script the Mako server will be running as a Linux background service when the installation script completes the installation we can now verify that the Mako server is running by using a browser and navigating to the registered domain name you should see the smq led iot demos web control interface you should see the message no device is connected let's perform a quick test to verify the smq IOT broker is working we can download the s mq c client library and a simulated version of the led demo designed to run in a command window the C code can be downloaded from real-time logic comm click on the das batch file link to download a script that automates downloading the source code and the tiny C compiler the batch file automatically compiles the code as soon as it is downloaded we must make one modification to the code since the smq LED example code is setup to connect to real-time logics public s mq broker we can use the included tiny C compiler to compile our modified code but the compiler needs a few command-line options to compile the code the easiest way to compile the code is to edit the download batch file open the batch file in an editor and simply delete the first part of the batch file that is setup to download the code navigate to the smq led examples directory and open the example source code in any source code editor scroll down to the source code line where the brokers domain name is set change the domain name to the domain name you registered and save the file navigate to the directory where the batch file is and run the batch file the batch file you edited will now recompile the example code and start the example the example code now runs in a command window notice how the web interface immediately changes the second we started the simulated smq led device example we can now click the LEDs in the web interface notice how the simulated device prints out the commands immediately after we click the LED button javascript code in the web interface sends an smq message to the online server which in turn redirects the message to the simulated device code notice how the interface is immediately updated when we exit the simulated device let's restart the simulated device by clicking on the executable we produced when compiling the code you can see the web interface changes as soon as we either start or exit the simulated device we have not shown how to install an SSL certificate in this video for more information on installing an SSL certificate and connecting a real device such as an embed board to your online broker see the tutorials on the Mako server website and watch the video IOT security creating x.509 chain of trust

15 Comments

  1. Hellman_x said:

    Does it matter what OS the server is running on?

    May 22, 2019
    Reply
  2. Gonk Droid said:

    so where do i modify the LED code?

    May 22, 2019
    Reply
  3. Gadusi said:

    Brilliant!

    May 22, 2019
    Reply
  4. Elliot Law said:

    Can anyone help? I'm looking to create a storage Server which is accessible when away from the local are network

    May 22, 2019
    Reply
  5. Tanishq Sharma said:

    how to connect arduino uno or other controllers to this domain

    May 22, 2019
    Reply
  6. prabhat Tamrakar said:

    Hi there,

    U paid to berry $8 for DNS i guess for getting IP
    That cost is only one time have to pay $8

    Or monthly or yearly need to pay?

    May 22, 2019
    Reply
  7. Aishwarya Kaushik said:

    got error code 0x08823 while registering domain from india?

    May 22, 2019
    Reply
  8. sonu kushwh said:

    Thanks a lot for this tutorial keep it up…:)))))))))))))))))

    May 22, 2019
    Reply
  9. Sandy said:

    Thanks for the video, I was able to use it for my server rented from datasoft
    http://datasoft.ws.…..

    May 22, 2019
    Reply
  10. Shubham Kumar said:

    i didn't get the ip address in my mail, which address does it refer to

    May 22, 2019
    Reply
  11. Big world Thế giới rộng lớn said:

    thanks.

    May 22, 2019
    Reply
  12. Osvaldo Cal said:

    Thanks very useful

    May 22, 2019
    Reply
  13. Vinay Kadalagi said:

    what i was looking for.. Thanks a ton

    May 22, 2019
    Reply
  14. Xenorosth XMD said:

    Just curious, what would happen if you had your OWN virtualized server, but it was windows 2012? How would this work?

    May 22, 2019
    Reply
  15. xennelul said:

    Awesome!!

    May 22, 2019
    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *