Basti SK

Software-Engineer. Dresden, Germany

Analyze Azure IoTHub Data in Grafana using InfluxDB

When sending data to Azure IoTHub it is possible to subscribe to the received data using the IoTHub Service endpoints. Microsoft offers SDKs for various programming languages, making subscribing to- and processing IoTHub Device-to-Cloud messages easy. In this post the Azure IoT SDK will be used to provide an easy way of processing data and Grafana + InfluxDB will provide cost-efficient way of storing and analyzing IoT data from IoTHub.

Tracking Flights with SDR and dump1090

Planes send position and other meta data via radio to stations on the ground - like airport towers. Using a simple and cheap SDR (Software Defined Radio) and some easy to configure software, it is possible to decode the messages send by the airplanes. Using some tools, their positions can be seen on a map view. In this blogpost I document how to configure the software “dump1090”, a tool which enables the exact things I just described.

[KnowledgeBase] Install & Configure Mediawiki

Prerequisites Create a new DB and DB user in mysql give the user full rights on his db Installation Download the latest mediawiki release, unzip it and move it to webserver root wget https://releases.wikimedia.org/mediawiki/1.XX/mediawiki-1.XX.X.tar.gz tar xvzf mediawiki-1.XX.X.tar.gz sudo mkdir /var/www/html/yourmedia sudo mv mediawiki-1.29.1/* /var/www/html/yourmedia navigate to the path in the webbrowser and follow the installation steps download the generated LocalSettings.php Edit the file on your remote session sudo nano /var/www/html/yourmedia/LocalSettings.

[KnowledgeBase] Install LAMP

Install & Configure Apache install the apache2 package sudo apt-get install apache2 edit the config to contain the correct servername in /etc/apache2/apache2.conf ServerName your.server.com restart the server to save changes sudo systemctl restart apache2 Allow http and https traffic in ufw sudo ufw allow http https Install & Configure MySQL Install the package and then run the secure installation script sudo apt-get install mysql-server mysql_secure_installation Install PHP Install the packages and restart apache after this sudo apt-get install php libapache2-mod-php php-mcrypt php-mysql sudo systemctl restart apache2 If you want to test it, add a phpinfo.

[KnowledgeBase] How to secure a Ubuntu Server Installation

This can not be a complete guidance, but it is a start. At least these are some things you should do everytime you setup a new server. Another good guide, which also explains how to setup a certificate based auth can be found here. 1. Disallow Root Login via SSH Create a new user and add him to sudo group adduser friendlyuser usermod -aG sudo friendlyuser disallow login of root via ssh, therefore open up /etc/ssh/sshd_config and uncomment or add this line PermitRootLogin no 2.

[KnowledgeBase] Install Teamspeak 3 on Ubuntu Server

Source with more details in the Ubuntu Wiki Create a new user that will run the TS server sudo adduser teamspeak –system –home /usr/local/bin/teamspeak3-server_linux_amd64 –disabled-login sudo su teamspeak –shell /bin/bash Download the latest TS Server from the offical homepage. tar -xjf teamspeak3-serverlinux.tar.bz2 -C /usr/local/bin/ cd ~ Create the ini and run the server ./ts3server createinifile=1 touch query_ip_blacklist.txt query_ip_whitelist.txt ./ts3server_startscript.sh start inifile=ts3server.ini This server will not automatically be restarted as it is not configured as a service yet.

[KnowledgeBase] Install & Configure SSL with Certbot

Install needed packages sudo apt-get install software-properties-common sudo add-apt-repository ppa:certbot/certbot sudo apt-get update sudo apt-get install python-certbot-apache add the correct servername to the configs in /etc/apache2/sites-available/000-default.conf <VirtualHost *:80> # The ServerName directive sets the request scheme, hostname and port that # the server uses to identify itself. This is used when creating # redirection URLs. In the context of virtual hosts, the ServerName # specifies what hostname must appear in the request's Host: header to # match this virtual host.

How to install ECQuiz Product in Plone

What is ECQuiz “A Plone product for multiple-choice tests, including extended text questions with tutor grading.” - visit their homepage here. You can find the package at pypi. This product allows the creation of quizes within the Plone content management system, especially tailored to quizes for universities. How to use ECQuiz The ECQuiz product available at pypi is build for Plone 4.1. I was able to get a running version with Plone version 4.

Grub does not detect Windows - Centos 7

This article will show you how to fix the problem of grub not showing existing windows partitions after installation of CentOS 7. The problem is, that CentOS seems not to be able to detect the bootable ntfs partitions without installation of some extra software. You will need the ntfs-3g tools. Do get this you need to enable the EPEL repository first. Do so by running the following commands: wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm rpm -ivh epel-release-7-5.

Get appointments from Exchange using EWS

With the Exchange WebService we have a simple way of getting the appointments of your Exchange Mailbox and use the information in your own custom programs. At first you will have to add the Resource to your Project. You can normally find the .dll here: C:\Program Files (x86)\Microsoft\Exchange\Web Services\2.1 In our example we will use the following model for saving the appointments/dates: public class Date { public int Id { get; set; } public TimeSpan Duration { get; set; } public DateTime End { get; set; } public DateTime Start { get; set; } public String Location { get; set; } public String Subject { get; set; } public String Body { get; set; } } Next you should connect to your Exchange WebService using something like this: public static ExchangeService Connect(string user, string password) { try { ExchangeService service = new ExchangeService(ExchangeVersion.