Installer et configurer facilement un Serveur Video DLNA sur Ubuntu

          

Accédez aux vidéos de votre Pc sur votre téléviseur grâce au serveur DLNA Ushare.

Testé sur un téléviseur LG…

Le serveur vidéo Ushare est certainement le moyen le plus simple pour lire vos films préférés stockés sur le disque dur de votre Pc Ubuntu. Son installation est trés simple: rendez vous dans la logithèque et recherchez Ushare, cliquez/installez, c’est fait, enfin presque…

Comme tous les serveurs, la configuration se fait par un « fichier de conf », il n’existe pas d’interface graphique pour Ushare, dommage. Ceci dit rien de difficile, ouvrez un terminal et:

Tapez la commande: sudo gedit /etc/ushare.conf

Votre mot de passe d’utilisateur vous est demandé pour éditer un fichier systéme et votre fichier de configuration apparaît. Vous pouvez remplacer le contenu du fichier par ce qui suit, pensez à enregistrer à la fin…

# /etc/ushare.conf
# Edit this file with ‘dpkg-reconfigure ushare’
# Configuration file for uShare

# uShare UPnP Friendly Name (default is ‘uShare’).
USHARE_NAME=Serveur Video

# Interface to listen to (default is eth0).
# Ex : USHARE_IFACE=eth1
USHARE_IFACE=eth0

# Port to listen to (default is random from IANA Dynamic Ports range)
# Ex : USHARE_PORT=49200
USHARE_PORT=

# Port to listen for Telnet connections
# Ex : USHARE_TELNET_PORT=1337
USHARE_TELNET_PORT=

# Directories to be shared (space or CSV list).
# Ex: USHARE_DIR=/dir1,/dir2
USHARE_DIR=/home/utilisateur/Vidéos

# Use to override what happens when iconv fails to parse a file name.
# The default uShare behaviour is to not add the entry in the media list
# This option overrides that behaviour and adds the non-iconv’ed string into
# the media list, with the assumption that the renderer will be able to
# handle it. Devices like Noxon 2 have no problem with strings being passed
# as is. (Umlauts for all!)
#
# Options are TRUE/YES/1 for override and anything else for default behaviour
USHARE_OVERRIDE_ICONV_ERR=

# Enable Web interface (yes/no)
USHARE_ENABLE_WEB=

# Enable Telnet control interface (yes/no)
USHARE_ENABLE_TELNET=

# Use XboX 360 compatibility mode (yes/no)
USHARE_ENABLE_XBOX=

# Use DLNA profile (yes/no)
# This is needed for PlayStation3 to work (among other devices)
USHARE_ENABLE_DLNA=

Deux lignes sont à renseigner avec précision:

  • USHARE_IFACE=eth0      ou vous précisez l’interface ethernet à utiliser sur votre carte mère (si vous avez plusieurs interfaces). complétez avec eth0, ou eth1, eth2 suivant le cas. La commande ifconfig tapée dans un terminal vous renseignera, voici le résultat de cette commande chez moi, vous y repérez eth0 au début:

jf@ubuntu:~$ ifconfig
eth0 Link encap:Ethernet HWaddr bc:ak:c5:92:7c:7f
inet adr:192.168.0.1 Bcast:192.168.0.255 Masque:255.255.255.0
adr inet6: fe80::beae:c5ff:fe92:7c7f/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Packets reçus:297661 erreurs:0 :0 overruns:0 frame:0
TX packets:213770 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
Octets reçus:355951864 (355.9 MB) Octets transmis:19272933 (19.2 MB)jf@jf-

  • USHARE_DIR=/home/utilisateur/Vidéos   ou vous préciserez le dossier dans lequel Ushare « regarde », remplacez utilisateur par votre nom d’utilisateur…

Je vous conseille comme d’habitude de filtrer vos appareils par Mac Adress de façon à ce que chacun de vos appareils ait une adresse Ip locale fixe, je vous renvoie sur cet excellent tuto ici

Enfin il faudra lancer Ushare au démarrage de votre Pc, pour cela tapez « applications » dans la recherche en haut à gauche de votre écran et cliquez sur « applications au démarrage »:

 

Applications au démarrage

Applications au démarrage

 

Vous obtenez cette fenêtre: Cliquez sur ajouter puis remplissez les champs, nom:Ushare, commande: ushare

Redémarrez votre pc et vos films seront accessible sur votre téléviseur par DLNA

 

Transfert de Fichiers entre Nexus 7/ Nexus 4 et Ubuntu 12.10, 13.04 en WIFI, La solution…

         

Transférer vos photos, musiques et fichiers entre la tablette Nexus 7, le téléphone Nexus 4 (Android 4.2 et ultérieurs) Google et votre Pc Ubuntu…

Cet article est valable pour les tablettes Asus Transformer Pad, Samsung Galaxy tab et Galaxy Note, les téléphones Samsung Galaxy S et tous les Téléphones sous Android 4.1 et 4.2…

Depuis l’arrivée d’Android 4.1, le système de transfert de fichier à « évolué » et Google à eu l’idée saugrenue d’opter pour le protocole MTP (propriétaire de Microsoft, un comble). Cela à eu pour conséquence que, avec ubuntu 12.10, vos tablettes et smartphones ne sont plus « montés » comme de simples médias amovibles (disques durs ou usb) dans lesquels vous pouviez glisser déposer des fichiers, créer des dossiers etc…quel dommage, passons…le problème à été résolu avec le passage à ubuntu 13.04. Cependant le reste de l’article concerne le transfert en wifi, par le réseau Local ou le WAN.

La solution pour transférer des fichiers par le réseau sur un appareil Android 4.1: Sftp et AndFTP

Le protocole Sftp (fttp sécurisé par ssh) va nous être très utile. Un seul problème, disposer d’un serveur ssh sur votre pc. heureusement j’ai déjà fait un petit billet permettant d’installer facilement votre serveur ssh: cliquez ici vous suivrez uniquement la procédure pour une installation « locale », inutile d’accéder à votre serveur de l’extérieur de votre domicile.

Connexion…

Une fois votre serveur ssh installé, installez l’application AndFTP sur votre Nexus 7/Nexus 4 ou appareil Android. Lors de la première ouverture, configurez la connexion avec le protocole Sftp (ssh), saisissez votre nom d’utilisateur (identifiant sur la session du pc) et votre mot de passe (de session), le port étant le port 22 par défaut. L’adresse Ip étant une adresse locale de type 192.168.0.1 Attention cependant à attribuer une adresse ip toujours identique pour votre matériel connecté, pour cela, vous créerez un bail dhcp permanent grace à la Mac Adress de votre matériel (filtrage par Mas Address): un bon tuto ici.

 

Ubuntu 12.10, 13.04, Se connecter à distance avec ssh…

Connexion à distance à sa session via un serveur SSH et explorer ses fichiers.

       

Voici un mini tutoriel pour installer et configurer un serveur ssh qui vous permettra de vous connecter à distance sur votre session Ubuntu ou sur la plupart des distributions Linux actuelles. Il n’est bien sur pas question ici de vous décrire l’emploi complet du protocole SSH avec le système de clef publiques et privées, mais plutôt de vous permettre de vous connecter à votre session facilement et de manière sécurisée avec authentification par mot de passe.

Attention, je vous conseille l’emploi d’un mot de passe de session sur, évitez les mots de passes simples, le serveur ssh donne un accès complet à votre session et est ouvert (accessible) par le réseau.

Le routeur:

Pour commencer il va vous falloir ouvrir un port dans votre routeur, le port ssh par défaut étant le port 22. Rendez vous dans l’interface de configuration de votre routeur (Box), ouvrez votre navigateur et tapez l’adresse 192.168.0.1 (ou sur votre interface de gestion free si vous êtes chez free, puis « configurer mon routeur »), bref ouvrez le port 22…

Installer Open Ssh server:

Sur Ubuntu le Client ssh est déja installé, il vous faut donc installer le serveur ssh. Ouvrez la logithéque et tapez « ssh » dans la barre de recherche. Installez le paquet « Secure shell client and server (metapackage) ». Vous avez presque fini, non, je blague…

Le fichier de configuration:

Comme tous les serveurs, le serveur ssh se configure par une « fichier de conf ». Il va donc vous falloir éditer (ouvrir) ce fichier. Connaissez vous la commande « gedit » ? Non? et bien c’est assez simple…ouvrez un terminal (faites une recherche de terminal dans l’outil de recherche en haut de la barre de gauche). Dans ce terminal il va vous falloir lancer une commande, aie, je sens que vous avez peur…pas de soucis…

Tapez la commande: sudo gedit /etc/ssh/sshd_config

Votre mot de passe d’utilisateur vous est demandé pour éditer un fichier systéme, normal sécurité oblige. Explication de la commande: « sudo » pour prendre des droits de superutilisateur, « gedit » pour utiliser l’éditeur de texte du même nom, /etc/ssh/sshd_config étant le chemin du fichier…

Et là, miracle, le fichier est édité.

Configuration du fichier sshd_config:

Vous pouvez remplacer le contenu du fichier par ce qui suit, attention vous pourrez vous authentifier par mot de passe ce qui n’est pas la méthode la plus sure. Je répète donc, vous devez utiliser un mot de passe de session « fort ». Cependant le protocole ssh est sur et il sera assez difficile de faire une attaque sur vote mot de passe s’il est assez compliqué. Voici le contenu du fichier…

# Package generated configuration file
# See the sshd_config(5) manpage for details

# What ports, IPs and protocols we listen for
Port 22
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0
Protocol 2
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
#Privilege Separation is turned on for security
UsePrivilegeSeparation yes

# Lifetime and size of ephemeral version 1 server key
KeyRegenerationInterval 3600
ServerKeyBits 768

# Logging
SyslogFacility AUTH
LogLevel INFO

# Authentication:
LoginGraceTime 120
PermitRootLogin no
StrictModes yes

RSAAuthentication yes
PubkeyAuthentication yes
#AuthorizedKeysFile    %h/.ssh/authorized_keys

# Don’t read the user’s ~/.rhosts and ~/.shosts files
IgnoreRhosts yes
# For this to work you will also need host keys in /etc/ssh_known_hosts
RhostsRSAAuthentication no
# similar for protocol version 2
HostbasedAuthentication no
# Uncomment if you don’t trust ~/.ssh/known_hosts for RhostsRSAAuthentication
#IgnoreUserKnownHosts yes

# To enable empty passwords, change to yes (NOT RECOMMENDED)
PermitEmptyPasswords no

# Change to yes to enable challenge-response passwords (beware issues with
# some PAM modules and threads)
ChallengeResponseAuthentication no

# Change to no to disable tunnelled clear text passwords
PasswordAuthentication yes

# Kerberos options
#KerberosAuthentication no
#KerberosGetAFSToken no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes

# GSSAPI options
#GSSAPIAuthentication no
#GSSAPICleanupCredentials yes

X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
#UseLogin no

MaxStartups 10:30:60
Banner /etc/issue.net

# Allow client to pass locale environment variables
AcceptEnv LANG LC_*

Subsystem sftp /usr/lib/openssh/sftp-server

# Set this to ‘yes’ to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication.  Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of « PermitRootLogin without-password ».
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to ‘no’.
UsePAM yes

Cette configuration permet théoriquement d’afficher des fenêtres de logiciels à distance (ligne:X11Forwarding yes
X11DisplayOffset 10) mais attention n’espérez pas des miracles, vous ne pourrez pas faire du streaming vidéo…, ceci étant du à la faible bande passante attribuée par votre fournisseur, vous pourrez cependant afficher firefox à distance par exemple… Cette configuration ne permet pas la connexion en tant que super-utilisateur (trop dangereux) mais en tant qu’utilisateur simple (vous devrez taper sudo pour faire des bêtises….): ligne: Password authentification yes. Les utilisateurs tentant de se connecter trop de fois sont bannis ligne: MaxStartups 10:30:60
Banner /etc/issue.net

Se connecter à distance…enfin!

Nous y voila, vous pouvez vous connecter à distance, votre serveur tourne et vous avez ouvert le port 22, le fichier est configuré pour l’authentification par mot de passe, tout y est.

  • Connexion en Local (à l’intérieur de votre réseau local, à la maison quoi…)

Tapez la commande ifconfig dans un terminal et repérez l’adresse IP de votre ordinateur

ifconfig

Terminal résultat de la commande ifconfig, Cliquez pour agrandir

Repérez le chiffre après inet adr, ici 192.168.0.1, mais c’est un exemple, et retenez le…Rendez vous sur un autre ordinateur de votre domicile…Ouvrez un terminal sur cette autre machine et tapez: ssh nomdutilisateur@adresseip ou nomdutilisateur est votre identifiant de session et adresseip est l’adresse ip que vous venez de mémoriser, votre mot de passe de session vous est demandé, vous êtes connecté…ceci pourra être très utile pour transférer des fichier sur une tablette android 4.1 et plus en wifi par exemple…

  • Connexion depuis l’extérieur de votre domicile

Bien sur vous connaissez l’adresse IP de votre routeur…euh nonon? Ah… Si vous étes chez free, vous avez une adresse IP fixe, très utile pour vous connecter. Sinon vous devrez créer une adresse ip fixe, tutoriel ici le reste de la procédure sera alors le méme, le plus pénible étant d’obtenir une ip fixe…

Une connexion ssh pour quoi faire?

Grace à votre serveur ssh vous pouvez:

  • Ouvrir un terminal sur une machine distante et lancer des commandes, lister des dossiers, faire les mises à jour, éteindre la machine…
  • Monter un dossier (votre dossier personnel par exemple) comme un disque dur sur votre bureau (de la machine distante) en effet le navigateur de fichier d’Ubuntu supporte le protocole ssh.
Fenêtre Connexion a un serveur

Fenêtre Connexion a un serveur

Ouvrez votre dossier personnel sur la machine distante puis rendez vous dans « fichier », « se connecter à un serveur » et choisissez le protocole ssh… Le dossier /home dans ce cas se trouvera monté comme une clef usb sur votre bureau, vous pouvez glisser/déposer des fichiers directement sur la machine distante.

  • Transférer des fichier sur un terminal Android 4.1 en wifi grâce à un client sftp (Andsftp par exemple). Sftp étant un protocole de transfert de fichier sécurisé par ssh…

Voila, il ne vous reste plus qu’à vous jeter à l’eau…