Tuesday, April 18, 2017

Windows - Streaming to TVs (via DLNA)

Here I’ going to show you how to stream media (in this the example is video but it should be similar to other media)  and share files with a Smart TV.

Smart TVs support a standard protocol called DLNA that allows you to stream video and share files to stream, among other things. Normally TV brands give it another name like AllShare (Samsung).

Windows Media Player and Windows itself support DLNA, wich is very usefull in order to display you media in you TV.


Enable Streaming

The DLNA streaming on Windows is off by default, so we need to enable it, the easiest is from Windows Media Player, just go to: 


Turn on you TV and wait a bit (20s) after click on “Turn on media streaming”:


now just click OK (check that you TV is on the list and is allowed), additionally you can change you media library name and disallow devices in your network:


later on if you want to comeback to this menu to Allow or Disallow a device you can just go to Windows Media Player again:


An alternative to get to this menu without Windows Media Player is just to go to the Start Windows icone and type “Media streaming options”, and click on the icon with that name:



Stream From the PC to the TV

First put your files here:


now this video will be available on the Videos section in Windows Media Player, you can select it and cast the video to your TV.

The first time you do this a popup will show on your TV asking if you allow the PC to stream, just select OK, the next time the streaming will automatically.


when the streaming starts, it will show you the controlls and the progress bar:


and you should be seeing the video on you TV Smile.

The inconvenience with this is that you have to go to you PC to start the video and maintain the player window open (in the next topic we are going to see how to start videos from the TV).

By default TV you only have the pause control over the video, but you can enable all the controls (Back, Forward, Previous Video, Next Video) with this option:



Start Videos From The TV (or another PC)

At this point if you already can stream from the PC to the TV, what you don’t know is that when you enabled streaming in the above section you are also started sharing the files in the Video library (by default only the Video folder) on your PC via DLNA.

Now on the TV you can get the the Videos library’s folders that your PC is sharing.


In my TV (Samsung Smart TV) you can find the PC by pressing on the  “Sources” in the TV remote.

As you can see bellow your PC is represented by a media icon, which has you PC name plus the library name you gave when you enabled streaming.

ICONfor other brands it should be similar, but check you TV’s Manual.

When you click the icon you get something like this:


DLNA categorizes and organizes your media which is normally quite confusing.

The easiest way is to go into the right category in this case Videos, and then select “Folders” that shows you the actual folders that you shared instead of some confusing DLNA organization.


if you want more folders to show on the TV you can just add them to the library, like this:


as you can see on the TV you have de default Video folder and the My Movies folder that we have just added to the Videos library.


if you just want to watch the videos in another Windows PC instead of you TV (ex: your Laptop), on that PC you just need to go to “Network”:


click on the media device icon, which will open Windows Media Player with the remote library already added to it:


and push play


Hope this was helpful !!!!!!! Smile

Saturday, February 11, 2017

Linux/Raspberry - Web SSH Shell (No client needed)

You probably access you linux machines via SSH using a client like Putty.

With Shell In A Box, you get the same SSH access but without any client, you just use a browser that shows you the the SSH connection via HTTPS.

This might be usefull in some scenario, so I’m going to show you how to set up it bellow.

To install just type:

sudo apt-get install shellinabox

and that’s it once it finished installing, Shell In A Box is running, just go to you browser and enter this


and you should get this


now just login and that’s it.

If you want to change something (ex: the 4200 port) you just edit this file:

nano /etc/default/shellinabox

FILE: shellinabox

# Should shellinaboxd start automatically

# TCP port that shellinboxd's webserver listens on

# Parameters that are managed by the system and usually should not need
# changing:
# SHELLINABOX_DATADIR=/var/lib/shellinabox
# SHELLINABOX_USER=shellinabox

# Any optional arguments (e.g. extra service definitions).  Make sure
# that that argument is quoted.
#   Beeps are disabled because of reports of the VLC plugin crashing
#   Firefox on Linux/x86_64.

and do

 sudo service shellinabox restart

to load the new configuration.

Monday, February 6, 2017

Docker - Running Applications on Docker Containers

Docker is a “container” platform, which allows applications to be run in their own sandboxed world. These applications share resources, e.g. things like hard drive space or RAM, but otherwise can’t interfere with programs running on the host system. For corporate servers this means an attacker may not be able to use a compromised web server to get at the database holding customer data.

For the desktop user, it means the bleeding-edge app you’re trying out can’t accidentally delete all your cat’s selfies.


Pros and Cons of Using Docker

There are several good reasons to try out new programs via Docker, including the following:

  • They are safely isolated from your system, without the means to do damage in most cases.
  • Docker containers have a mechanism to keep them up-to-date, meaning it’s easy to make sure you have the latest and greatest versions.
  • You’re not installing anything on your “real” system, so you won’t run into conflicts with your “regular” versions on the application. You could, for example, run LibreOffice on your host system, but run OpenOffice in a container (you know, in case you don’t believe the project is shutting down).
  • Speaking of versions, you can even have multiple (but different) copies of the same version running on your machine at once. Try that with Word 2016!
  • Some Docker apps run their own minimized version of Linux. This means even if the app isn’t normally compatible with Mac or Windows it may still work for you within a Docker container. Try them out before you switch to Linux full time.
  • They’re easy to clean up. Don’t like the way things turned out? Just trash the container and create a new one.

On the other hand, there are some caveats to using applications this way:

  • As they operate in their own little world, they don’t have access to your files unless you give it to them. That means if you want to try the brand new version of LibreOffice via Docker, you may need to do some additional work to make your files accessible.
  • In general, Docker apps ship with everything they need to run, which often includes libraries that could be re-used with other programs. Some even ship with a full operating system behind them. So you may be doubling up on disk space usage.
  • They don’t provide convenient icons and other desktop-centric niceties. While we’ll show you a GUI you can use to download and run these Docker containers, they won’t show up in your main application launcher unless you create an entry by hand.
  • Like many things open source, it’s members of the community who have been creating these Docker applications from their upstream releases. This means your access to the latest version and/or any bugfixes is at the mercy of these peoples’ free time.


Installation and Usage

Getting things up and running involves three preliminary steps:

  1. First, get Docker installed and running on your system (including a graphical interface for it, if you want one).
  2. Next, find and download an image for the application you want to run. While you normally install an application, you get one (and only one) copy of it. Think of an image as a template for the application — you can create as many installs from this template as you like.
  3. Lastly, create one of those copies, called a container, and run it.

Let’s look at each of these in detail.



Most Linux distribution have Docker available in repositories for easy installation. In Ubuntu, the following command will get you what you need:

sudo apt-get install docker.io

You can confirm the system is running by confirming the “dockerd” daemon is running (you do know how to use ps, grep, and pipes, don’t you?): An A-Z of Linux - 40 Essential Commands You Should Know An A-Z of Linux - 40 Essential Commands You Should Know Linux is the oft-ignored third wheel to Windows and Mac. Yes, over the past decade, the open source operating system has gained a lot of traction, but it’s still a far cry from being considered... Read More

ps ax | grep dockerd

The Docker daemon will start up with your system automatically by default, but you can set that differently if you know how to adjust your systemd settings.

If you’re interested, you can also grab the Simple Docker UI Chrome app. Follow the instructions here to get things set up so you can connect to the Docker daemon on your machine.


Note: If you use Simple Docker UI, make sure you add yourself to the “docker” user group as described here. If you’re not part of this group, you won’t be able to use Docker commands from your normal (non-root) user account, the one with which you’ll be running Chrome and its apps, without using sudo all the time.


Finding and Installing Desktop Applications With Docker

Now that you’ve got a nice UI going, it’s time to find something to install. Your first stop should be the Hub, a repository of applications hosted by the docker project. Another straightforward way to find some interesting applications is to Google for them. In either case look for a “Launch Command” along the lines of the following:

docker run -it -v someoptions \

-e more options \

yet even more options...

Paste this into a terminal and it will download and launch the application for you.

You can also “pull” the application, then launch it yourself. If you’re using the Simple UI app, it can search Docker Hub automatically for your keyword.


Once you’ve found what you’re looking for, click its listing, then the Pull Image button in the pop-up dialog to download the image of the application.


Remember, an image is a “template” of sorts. Next you’ll need to create a container that uses your new image. Switch over to the Images tab. Clicking the Deploy Container button will create a new, runnable copy of your application.




Running Your New Docker Container

From the command line, you can view a list of all your docker containers with the command:

docker ps -a


This lists the containers with some of their stats — note the “NAMES” column to the far right. To restart one of your containers, pick the name of the container you want and issue the following:

docker start [containername]

Using the app, go the “Containers” screen, select the container you want, and click the “Start” button in the upper left of the screen. Your application will start in a new window on your desktop, just like a “normal” application.


Your application should open in a new window, just as if you had installed it normally. But remember, it exists in isolation from your other applications. This allows you to do some neat things, like run LibreOffice and OpenOffice in parallel (their dependencies usually conflict with one another):



Try Docker-ized Apps for Fun and Profit

Docker provides an easy way to get an app up and running so you can try it out, and an equally easy way to clean it from your system. Once you get through the initial set-up of Docker, a single run command is often all you need to download an image, create a container from it, and launch it on your desktop.


Taken From: http://www.makeuseof.com/tag/safely-test-desktop-applications-secure-container-docker/

Tuesday, January 3, 2017

Finding Your Public IP with Telnet (CLI)

Her I’m going to show you a little trick off a way to get you public IP when you just have a command line interface.

This can be done in any equipment with telnet like a:

  • Router
  • Switch
  • Linux Server
  • etc


How To Do It – Site: Check IP

The webpage:

gives out you public IP on a Browser, so what we are going to do is to open the Web Page on the HTTP Port (Port 80), and get a response from the webpage with you Public IP.

This Web Page does not need you to send HTML to pretend that your telnet is a Web Browser (like the IP Echo Website bellow)

To do it:

telnet checkip.dyndns.org 80


telnet 80

if you don’t have DNS configured, and then do as soon as it connects press:

  • ENTER (one or two times)

and it will give you the output bellow.




How To Do It – Site: IP Echo 

The webpage:

gives out you public IP on a Browser, so what we are going to do is to open the Web Page on the HTTP Port (Port 80), and then send some HTML code to pretend that your telnet is a Web Browser to get the HTML response from the webpage with you Public IP.

To do it:

telnet ipecho.net 80


telnet 80

if you don’t have DNS configured, and then paste the following HTML code

GET / HTTP/1.1
Host: ipecho.net
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)

and press Enter, and you get this:


rigth here you can see you IP.


See Public IP on a Browser

In both methods/sites if you want, you can see the IP in a more pretty way, just copy the HTML code the Web Page returned (this output is from the IP Echo site):


to a text file with the “.html” extension in the computer you are using, I named mine index.html


save it and double click in the index.html which will open on your default browser, and show the HTML you copied from the command line:


Sunday, December 11, 2016

Raspberry Pi/PC - NAS: OpenMediaVault

Today I’m going to show you how to install and configure OpenMediaVault which is a very cool platform that allow you to make a NAS out of a Raspberry Pi or a PC and add a lot of services on top of that, these are either already builtin ou added via the many plugins that you can install with just a click.


  • Install - PC / VM
  • Install - Raspberry Pi
  • Log In
  • System Basic SetUp
  • Storage SetUp
  • Users SetUp
  • Service SetUp – SMB/CIFS
  • Service SetUp – Other Services (Compact)



On the Web Interface every change needs to be:


or else the changes don't take efect


Install – PC / VM


Installing OMV

Go to:


and get the iso, in my case i got this:

for a real PC you must burn it to a CD and put it in the CD Drive and for a VM you just select
the ISO image.

Now start you PC/VM and boot the CD/ISO, then series of BLUE SCREENS will show and you should  configure it to your specific location, bellow  you have the default values OMV gives you.
Use Tab and Arrow Keys to move arround in
each screen

    ## BLUE SCREENS ##

  • Select Language | English
  • Select your location | United States
  • Keymap to use | American English
  • Configure the Network | Hostname: openmediavault
  • Configure the Network | Domain name: local
  • Set up users and passwords | Root password:********
  • Set up users and passwords | Re-enter password to verify:********
  • Configure the clock | Select your time zone: Eastern


  • Configure the package manager | Debian archive mirror country: United States
  • Configure the package manager | Debian archive mirror: ftp.us.debian.org  
  • Configure the package manager | HTTP proxy information: <blank>


  • Install the GRUB boot loader on a hard disk | Device for boot loader installation: /dev/sda


  •     Configuring resolvconf | Installation complete: <Continue>

    Now it boot up and starts OpenMediaVault showing you the CLI


Installing OMV Extras

The OMV Extras plugins adds multiple plugins repositories that make installing additional plugins very easy.

Download the plugin OMV Extras plugin here:


download the .deb for you version:
     For OMV 2.x (stoneburner) - openmediavault-omvextrasorg_latest_all.deb
     For OMV 3.x (erasmus) (STILL BETA) - openmediavault-omvextrasorg_latest_all3.deb

First find the IP your OpenMediaVault obtained via DHCP on the CLI

    openmediavault login: root
    Password: ********


     inet addr:    !--> OMV_IP

Now do the following steps:

  • On a Browser: http://<OMV_IP>
  • Go to the plugin tab in OMV's web interface
  • Upload the file.
  • Select the newly uploaded plugin openmediavault-omvextrasorg
  • Click on Install. Refresh page.
  • Go to the plugin tab and click Check.

from here on the PC version is indistinguishable from the Raspberry Pi version.

If you had any trouble check the following video, it has the procedure above and more:


Install - Raspberry Pi

Go to:

and download an image, then you install it with Win32 Disk Imager on your Raspberry Pi SD Card, like every other raspberry Pi Image.



Log In

The IP was assigned via DHCP, I found the IP on my internet router on the DHCP section  (the name associated with the IP was “raspberry” / “OMV3”)


- username = admin
- password = openmediavault

- username = root
- password = openmediavault


System Basic Setup

First lets change the Web Interface password:


This does not change the SSH password, if want to change it you need to access it via SSH with a client like Putty

root@raspberrypi:~# passwd root
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

Bellow I activate the HTTPS option, and force it to be the only available web access, to garante a secure access (this step is optional).

Enabling HTTPs requires a certificate, so first we will have to create it:


Creating a certificate:


Enable HTTPS and force HTTPS to be the only option (“Force secure connection only”) :


Set time with via NTP server (this step is optional):


Change Hostname (this step is optional):


SetUp a private IP Adress (this step is optional):




Storage Setup

First lets wipe the Disk clean if it already has a filesystem (mine is a USB Flash Disk) :


Now let’s create a filesystem (disk with an EXT4 partition):


Now we mount the filesystem we created above:



Users Setup

Now we setup a user to use with the services we are going to configure later:


This user is automatically put in the users Group:



Service Setup – SMB/CIFS

Here we are going to setup the SMB/CISFS service (aka Windows Shared Folders).

First we add a folder to the filesystem:


Next we make this folder available via SMB/CIFS.

First we enable the service:


and next we add the previously created folder to SMB/CIFS:


the final step is to setup the access permissions to the folder:


Now let’s test the access via SMB/CIFS to the created folder.





Service SetUp – Other Services (Compact)

The setup of other the services is very similar to the setup of SMB/CIFS above, so lets take a more compact aproach

### FTP Service (Built In) ###
Services >> FTP >> Settings | Enable                   !--> Activate Service
Services >> FTP >> Shares | (v)                            !--> Add Folder to Service
Services >> FTP >> Shares | (Magnifying Glass)   !--> Define permissions


### TFTP Service (Built In) ###
Services >> TFTP >> Settings | Enable                   !--> Activate Service
Services >> TFTP >> Shares | (v)                            !--> Add Folder to Service
Services >> TFTP >> Shares | (Magnifying Glass)   !--> Define permissions
Services >> TFTP >> Allow new files                     !--> Allow new files creation


### RSync Server (Built In) ###
Rsync >> Server | Enable                                            !--> Activate Service
Rsync >> Server >> Modules >> Shared Folder | (v)   !--> Add Folder (Source)
Rsync >> Server >> Modules >> Shared Folder | (Magnifying Glass) !--> Define user permitions

!-- Syncing with the OMV Rsync Server – Remote to Local Folder --
rsync -avz -e ssh remoteuser@remotehost:/remote/ /local   

!-- Syncing with the OMV Rsync Server – Local to Remote Folder --  
rsync -avz /local/ -e ssh remoteuser@remotehost:/remote     


### BitTorrent Client (PlugIn) ###
Download your torrents directly to you OpenMediaVault and access them via the
other services (ex: SMB/CIFS | MiniDlna | Plex | etc).

System >> Network >> Plugins                                             !--> Install Plugin
- Section: Downloaders
- Plugin : openmediavault-transmissionbt 3.0.9
- Select Plugin + Install

Services >> BitTorrent >> Settings | Enable                          !--> Activate Service
Services >> BitTorrent >> Files and Locations | Download   !--> Add+Enable Done Folder

Services >> BitTorrent >> RPC | Enable                                !--> Enable Web Client
Services >> BitTorrent >> RPC | Port: 9091                            !--> Web Client TCP Port
Services >> BitTorrent >> RPC | Username                           !--> Web Client Username
Services >> BitTorrent >> RPC | Password                            !--> Web Client Password

To use the BitTorrent WebClient just go to:


### MINI DLNA (PlugIn) ###
This allows you to access/stream you
media files to you TV or Mobile device

System >> Network >> Plugins                               !--> Install Plugin
- Section: Multimedia
- Plugin : openmediavault-minidlna 3.3.4
- Select Plugin + Install

Services >> DLNA >> Settings | Enable                   !--> Activate Service
Services >> DLNA >> Shares | (v)                            !--> Add Folder to Service
Services >> DLNA >> Shares | (Magnifying Glass)   !--> Define permitions


### Plex Media Server (PlugIn) ###

!-- Install and Configure --
System >> OMV-Extras | Plexmediaserver: Edit+Enable              !--> Activate Repository

System >> Network >> Plugins                                                    !--> Install Plugin
- Section: Multimedia
- Plugin : openmediavault-plexmediaserver 3.7
- Select Plugin + Install

Services >> Plex Media Server >> Settings | Enable                   !--> Activate Plex Server
Services >> Plex Media Server >> Settings | Database Volume  !--> Pick Filesystem
Services >> Plex Media Server >> Plex Web Client                    !--> Local Plex Client

The Local Plex Client allow you to play you
media on you browser locally on you LAN, but
if you want to make it available on the internet
just create an account at:


Clic on the message at the top of the
Local Plex Client:

    "An unclaimed media server has been found on your network. Claim it now"

and click on "Claim Server"
If this message dos not show, just go to:

   Settings >> Server >> Claim Server

and add the user and password of the account
you created online
Now you can play the media on you disk from
anywer in the internet

!-- Play Media - On The internet --
https://www.plex.tv/ + LAUNCH

!-- Play Media - On The LAN --
Services >> Plex Media Server >> Plex Web Client


### Remote Desktop - RDP (PlugIn) ###
Remote desktop plugin for OpenMediaVault. Installs xfce4 minimal desktop environment
and rdp server.

System >> Network >> Plugins                                        !--> Install Plugin
- Section: Network
- Plugin : openmediavault-remotedesktop 3.6
- Select Plugin + Install

Services >> Remote Desktop >> Port: 3389                      !--> Default Port
Services >> Remote Desktop >> Encription Level: Low   !--> Default Encription


### USB Backup (PlugIn) ###
The new plugin ‘USB Backup’ can be used to automatically synchronise a shared
folder to an external USB storage device when the USB stick is plugged in.

System >> Network >> Plugins                                                   !--> Install Plugin
- Section: Multimedia
- Plugin : openmediavault-usbbackup 3.2.12
- Select Plugin + Install

Services >> USB Backup >> Settings | +Add                               !--> Add Job
Services >> USB Backup >> Settings | Enable                             !--> Activate Service
Services >> USB Backup >> Shared Folder | (v)                          !--> Add Folder (Source)
Services >> USB Backup >> Shared Folder | (Magnifying Glass) !--> Define user permitions
Services >> USB Backup >> Device                                             !--> Select USB Flash (Destination)


### OpenVPN (PlugIn) - UNTESTED ###
This is AWSOME OpenMediaVault can even have
a VPN Server in it's services for remote/secure
access to you files

This is AWSOME OpenMediaVault can even
have a VPN Server in it's services for
remote/secure access to you files

System >> Network >> Plugins                                                      !--> Install Plugin
- Section: Remote
- Plugin : openmediavault-openvpn 3.0.4
- Select Plugin + Install

Services >> OpenVPN >> Settings | Enable                                    !--> Activate OpenVPN
Services >> OpenVPN >> Settings | Public address: <Pub IP>       !--> Your Public IP
Services >> OpenVPN >> Settings | DNS servers(s): <IP1>;<IP2>   !—> DNS Server


### Shell In a Box (SSH via Web UI) ###
Web based SSH client to the local Open Media Vault

System >> Network >> Plugins
- Section: Administration
- Plugin : openmediavault-shellinabox 3.4
- Select Plugin + Install

Services >> Shellinabox >> Enable

To use the Web SSH Shell:

Services >> Shellinabox >> Web Client


### Wake On Lan (WOL) ###
Plugin to send WAKE-ON-LAN magic
to wake a system at using rtcwake
and wakeonlan.

System >> Network >> Plugins
- Section: Administration
- Plugin : openmediavault-wol 3.1
- Select Plugin + Install

Services >> WOL >> System | +Add                            !--> Add Machine
- Name            : <Machine Name>
- MAC Address    : <Machine MAC>
- IP Address    : <Machine IP - Optional>

To use the Web SSH Shell:

Services >> WOL >> System | Select Machine +Send

Enjoy Smile

Related links:

- OpenMediaVault on VMWARE: https://www.youtube.com/watch?v=ox69xQaOfXM