Link: Make an Internet Controlled Lamp with a Raspberry Pi and Flask

Here I will be showing you how to turn on and off a lamp from anywhere in the world. However, you can control any device that works by toggling its power source, such as a fountain, TV, Christmas tree lights, projector, etc.

Full article here:
Make an Internet Controlled Lamp with a Raspberry Pi and Flask (jack.minardi.org)

Link: How to Recover Accidentally Deleted Files Without Paying Outrageous Fees

You can’t always blame data loss on hardware failure. A clumsy user can be just as harmful. PhotoRec is a nifty little command-line based tool that can recover accidentally deleted files.

To use PhotoRec effectively you need to understand how the filesystem handles files. When you delete a file, it isn’t actually zapped into oblivion. Rather the file system just marks it as deleted, and makes the space the file occupies available to other files.

This means that until another app uses that recently freed-up space, the original file is still there, and can be retrieved by a file recovery tool. For this very reason, it’s very important that you immediately stop using the computer as soon as you realize that you have accidentally deleted files in order to minimize the interactions with the hard disk.

Note: PhotoRec is cross-platform compatible. For this tutorial, we will use a Linux (Ubuntu) system for illustration.

Full article here:
How to Recover Accidentally Deleted Files Without Paying Outrageous Fees (Make Tech Easier)

OpenSprinkler Pi (OSPi) – An Open-Source Sprinkler / Irrigation Extension Board for RPi

OpenSprinkler Pi (OSPi) is an open-source sprinkler / irrigation extension board for Raspberry Pi (RPi). It is based on the design of OpenSprinkler, but its ‘brain’ is an RPi instead of an AVR microcontroller.

The idea of OSPi first came when I noticed that many users were setting up RPi to work with OpenSprinkler. There are good reasons to do so, for example, to enable logging, to customize the default Javascript files, and to allow more advanced features such as weather-based and learning-based control. OSPi is designed as an extension board that makes use of RPi’s GPIO pins to directly control sprinkler valves, without an additional layer of microcontorller and Ethernet controller. In other words, it is a circuit board that allows an RPi to directly interface with sprinkler valves.

Full article here:
OpenSprinkler Pi (OSPi) (rayshobby.net)

Link: How to install and configure Nagios on Linux

Nagios is one of the most powerful network monitoring systems, which is widely used in the industry. It can actively monitor any network, and generate audio/email warnings and alerts when any problem is detected. The check types and alert timers are fully customizable.

Another incredible capability of Nagios is that it can monitor both hosts and services e.g., it can monitor IP addresses and TCP/UDP port numbers. To explain a little, let us assume that there is a web server that we want to monitor. Nagios can check whether the server is online by running ping on the IP/name of the server as well as it can be set up to provide warnings in case the round trip time (RTT) to the server increases. Further, Nagios can also check whether TCP port 80 (web server) is reachable e.g., the server is online but Apache/IIS is not responding.

There are also 3rd party monitoring tools that are based on Nagios, such as Centreon, FAN , op5 Monitor, which supplement standalone Nagios engine in terms of interface, automation, and technical support.

This tutorial explains how to install and configure Nagios on Linux.

Full article here:
How to install and configure Nagios on Linux (Xmodulo)
Related:
Install And Configure Nagios on Ubuntu 14.04 LTS (Unixmen)

Why you can’t get SRTP encryption to work between Asterisk and your VoIP adapter or phone

Some recent versions of Asterisk (Asterisk 11 in particular) have built-in SRTP support of sorts. As Wikipedia notes,

The Secure Real-time Transport Protocol (or SRTP) defines a profile of RTP (Real-time Transport Protocol), intended to provide encryption, message authentication and integrity, and replay protection to the RTP data in both unicast and multicast applications. It was developed by a small team of IP protocol and cryptographic experts from Cisco and Ericsson including David Oran, David McGrew, Mark Baugher, Mats Naslund, Elisabetta Carrara, James Black, Karl Norman, and Rolf Blom. It was first published by the IETF in March 2004 as RFC 3711.

In simple terms, SRTP encrypts the audio of your VoIP calls, making it much more difficult for anyone with a packet sniffer to listen in.

Let’s say you have an Android-based tablet and you are running CSipSimple. If you have configured it as an extension off your Asterisk 11 server, and you turn SRTP on in the security settings, you will likely find that outgoing calls work fine but incoming calls do not.  The reason is that you need to add one line to the extension’s configuration settings in Asterisk:

encryption=yes

If you are using FreePBX then it’s only a bit more complicated.  You’d need to add two lines to the /etc/asterisk/sip_custom_post.conf file:

[####](+)
encryption=yes

Replacing #### with the extension number. Once you have done this and reloaded Asterisk, it will only communicate with the endpoint using SRTP.

BUT there is one problem here.  With some other VoIP devices and softphones, once your have enabled SRTP, any attempt to place an outgoing call will not work.  And, if you watch the Asterisk CLI, you may see lines similar to this:

[2013-12-19 08:18:57] NOTICE[2949][C-000005e9]: sip/sdp_crypto.c:255 sdp_crypto_process: Crypto life time unsupported: crypto:1 AES_CM_128_HMAC_SHA1_80 inline:6aV+PFYMnVJVUZuxug9EM5yefPnfOrNhHcKLSABE|2^20
[2013-12-19 08:18:57] NOTICE[2949][C-000005e9]: sip/sdp_crypto.c:265 sdp_crypto_process: SRTP crypto offer not acceptable
[2013-12-19 08:18:57] WARNING[2949][C-000005e9]: chan_sip.c:10454 process_sdp: Rejecting secure audio stream without encryption details: audio 17100 RTP/SAVP 0 8 18 104 101

The problem is that in Asterisk, “any SRTP offers that specify the optional lifetime key component will fail”, as is detailed in this submitted patch to Asterisk:

(ASTERISK-17899) [patch] Adds a ‘ignorecryptolifetime’ (Ignore Crypto Lifetime) option to sip.conf for SRTP keys specifying optional ‘lifetime’

If if the device or softphone had a setting to disable sending the lifetime parameter, it probably would work. If users would go through the trouble of applying this patch to Asterisk, it would probably work, but many users either don’t know how to do that, or they are running a pre-built distribution and don’t want to or cannot tamper with it (also, any upgrades to Asterisk thereafter would require re-application of the patch). If Digium would apply this patch to Asterisk and push it out in upgrade releases, it probably would work. But for whatever reason, though this patch was first posted back in May of 2011, Digium has not seen fit to roll it into Asterisk.

So, this may very well be the reason, or at least one of the reasons, why you can’t get SRTP encryption to work between Asterisk and your VoIP adapter or phone! Basically, your VoIP device or softphone and Asterisk just don’t want to play nice with each other.

We’ve heard that some other varieties of PBX software, such as FreeSWITCH, might not have this issue, but since we don’t have a working FreeSWITCH installation at the moment we cannot comment on that.

Link: How to Install and Configure UFW – An Un-complicated FireWall in Debian/Ubuntu

The ufw (Uncomplicated Firewall) is an frontend for most widely used iptables firewall and it is well comfortable for host-based firewalls. ufw gives a framework for managing netfilter, as well as provides a command-line interface for controlling the firewall. It provides user friendly and easy to use interface for Linux newbies who are not much familiar with firewall concepts.

While, on the other side same complicated commands helps administrators it set complicated rules using command line interface. The ufw is an upstream for other distributions such as Debian, Ubuntu and Linux Mint.

Full article here:
How to Install and Configure UFW – An Un-complicated FireWall in Debian/Ubuntu (TecMint)

How to use Wiconnect in Ubuntu Linux to set up a WiFi access point that Android devices can connect to (NOT an ad hoc network!)

If you run Ubuntu Linux, and you have a wired ethernet connection to your system, and it also has wireless connectivity, then at some time you might have tried to set it up as a WiFi access point.  And what you probably discovered is that you can create a WiFi access point using Ubuntu’s “Create New Wireless Network” panel, but unfortunately this creates what is termed an “ad hoc” network, and for reasons we don’t fully understand, Android devices and some other types of wireless devices apparently can’t connect to that kind of network.

Ubuntu's method for creating a WiFi access point will NOT allow Android devices to connect
Ubuntu’s method for creating a WiFi access point will NOT allow Android devices to connect

Why this should be so difficult in Ubuntu is hard to fathom because Windows users can easily set up an access point using Connectify.  This provides an actual access point.  It turns out that there’s a similar program for Ubuntu but it’s not well known, because it’s not in the official Ubuntu repository.  The program is called Wiconnect Infrastructure Wireless Connection Manager and it is described as follows:

Wiconnect is an infrastructure wireless connection manager built specifically for ubuntu. This is an Ubuntu’s open source alternative for connectify. It aims to provide network that is compatible with android devices.
current features:
– Compatible to connect with android devices
– Flexibility to change wifi username and password
– ability to check devices that connects to your wifi

future aim :
– ability to create repeater
– a much better gui
– ability to check devices that connects to wifi via device name and not mac address

The program is hosted on Launchpad and is available as a .deb file.  So, go to the download page and download the software to your system.  Then, double click on the file once it’s been downloaded, and Ubuntu Software Center will load and display this:

Wiconnect Install page as displayed in Ubuntu Software Center
Wiconnect Install page as displayed in Ubuntu Software Center

Again, just in case you didn’t quite understand what we wrote above above, you cannot at this time find Wiconnect by searching for it in the Ubuntu Software Center – you have to download the .deb file and then double click on it to cause Ubuntu Software Center to bring up the above page. Once you read the page, if you want to install the software, just click the Install button. Once the software is installed, you need to run it to configure it. We have Classic Menu Indicator installed, and it appears under Other | Wiconnect, but you can also start it by going to the Dash and typing in Wiconnect. The first screen you will see when you invoke the program is this:

Wiconnect Connection tab
Wiconnect Connection tab

Before you go any further, you should check your network connections and make sure that “Enable Wireless” is on (there should be a check mark next to it) but also make sure you are not actually connected to a WiFi network. Unless you have two network adapters, you can’t both be connected to a WiFi network and simultaneously acting as an access point.

Now on the Wiconnect Connection screen, click the About tab to bring up this screen:

Wiconnect About tab
Wiconnect About tab

Click the button that reads “How to use this software” – it should bring up a text file that will help you if you get stuck at any point. Now click the Connection tab to go back the original screen, and then click the Setup/Resetup Wizard button. It will then bring up several screens asking for information:

Wiconnect Root Password window
Wiconnect Root Password window
Wiconnect Root Password confirmation window
Wiconnect Root Password confirmation window

The above two windows are asking for the password you use on your system when installing new software or making system changes. Some of what it has to do requires root privileges, so that’s why it needs the password.

Wiconnect Wifi Settings
Wiconnect Wifi Settings

On the above screen it wants you to enter the name of wireless network as it will be seen on your WiFi devices, also called the SSID. Use something unique, but not too personally identifying, so that if you are in an area where there are multiple WiFi networks you will be able to easily find your access point. As for the password, this might be called either the “password” or “key” on some devices, but you should use a really strong one here if you don’t want to be hacked. If you don’t have a program that you can use to generate a truly random password, then search online for a random password generator. The longer and more random the password is, the better. Remember that if a hacker can see your access point, he can run a program that can try millions of password combinations over time, so don’t make yourself an easy target.

Wiconnect Connection Settings
Wiconnect Connection Settings

On the above screen you need to select your internet source, which in most cases will be your wired ethernet connection on eth0.

Wiconnect Save Root Password query
Wiconnect Save Root Password query

On the screen above, it is asking whether you want to be prompted to enter your password any time you make a change, such as starting or stopping your wireless access point. By saving the root password, it won’t ask for it each time, but as it notes, that is less secure. If you are not the only user of your system, you probably do not want to save the root password, so that no one else can start or stop your access point without your permission. After you have answered that question, you should see this screen:

Wiconnect Setup Completed screen
Wiconnect Setup Completed screen

This completes the setup but doesn’t start your access point. To do that, go back to the original window and select the Connection tab:

Wiconnect Connect Tab, updated with correct ssid name
Wiconnect Connect Tab, updated with correct ssid name

Note that the SSID name should now be showing the name you selected (if not, you might need to restart Wiconnect). Now click the Create Connection button. After several seconds, your access point should be operational. Whenever you want to turn it off, click the “Stop Connection” button. Note that if you answered “No” to the question about saving the root password, then you will be prompted to enter it each time you start or stop the wireless connection.

Note that if your device (that you want to connect to your access point) asks you to specify what type of connection this is, it will be something like “WPA/WPA2 PSK” – the exact terminology may vary but the most important thing is that it is WPA2.

In case you are wondering, the Advanced tab in Wiconnect looks like this:

Wiconnect Advanced Tab
Wiconnect Advanced Tab

The first four buttons give you the ability to change individual settings in the configuration without re-running the entire setup. The fifth lets you see a report of what is connecting to your access point at any given time – with one device connected, it looks like this (the MAC address in the image has been replaced by x characters for security):

Wiconnect "Who is connected to my WiFi?" Window
Wiconnect “Who is connected to my WiFi?” Window

Just as a final note, we used this with Ubuntu 12.04, the most recent LTS (Long Term Support) version of Ubuntu, and it allowed us to create an access point that an Android tablet could connect to. It’s not the most beautiful program out there, but at least for us, it worked, and that’s what’s important. We particularly appreciated the convenience of being able to start or stop the access point just by clicking a button. But just in case anyone can’t seem to make this work, here’s another article that shows a bit different method to achieve nearly the same result:

How to Set Up a Wireless Hotspot (Access Point Mode) That Supports Android in Ubuntu (WebUpd8)

Hopefully one of these two approaches will get your access point working!

Link: How to Change the Date of your Digital Photographs

John Q. Public has just finished importing the videos and pictures from the digital camera to his laptop but realizes that the media files are incorrectly time-stamped.

Maybe the date and time settings of his “point and shoot” camera were set incorrectly or maybe the digital camera was stamping the files with local time though the pictures were being shot in another country with a different time zone. He probably forgot to change the time stamp of the camera before going on vacation.

How does John change the data and time of his pictures?

Full article here:
How to Change the Date of your Digital Photographs (Digital Inspiration)

Ubuntu Doesn’t TRIM SSDs By Default: Why Not and How To Enable It Yourself

Ubuntu wants to enable TRIM for SSDs by default in Ubuntu 14.04. In other words, Ubuntu isn’t already using TRIM, so your SSD is slowing down over time. But why isn’t Ubuntu already using TRIM?

This news will likely come as a surprise to many people, who assumed that Ubuntu and other Linux distributions were already using TRIM. TRIM prevents SSDs from slowing down over time and is a necessary part of SSD maintenance.

Full article here:
Ubuntu Doesn’t TRIM SSDs By Default: Why Not and How To Enable It Yourself (How-To Geek)