Installation et configuration de Owncloud

OwnCloud est une solution de cloud privée opensource. A l’image DropBox, il vous permettra de sauvegarder, dupliquer et partager tous vos fichiers.

Installation des composants nécessaires au fonctionnement de notre serveur ownCloud.

apt install apache2 mariadb-server libapache2-mod-php7.0 php7.0-gd php7.0-json php7.0-mysql php7.0-curl php7.0-dom php7.0-mb php7.0-intl php7.0-mcrypt php-imagick php7.0-zip php7.0-xml php7.0-mbstring unzip

Puis téléchargez les sources de ownCloud sur le serveur.

wget https://download.owncloud.org/community/owncloud-10.0.3.zip

Dézipper l’archive d’ownCloud.

unzip owncloud-10.0.3.zip

Une fois dézippé, nous pouvons déplacer notre répertoire owncloud vers notre serveur web apache.

cp -r owncloud /var/www

Nous allons donner les droits à l’utilisateur et au groupe www-data au répertoire owncloud.

chown -R www-data:www-data /var/www/owncloud

Nous devons maintenant créer un nouveau site apache afin de rendre accessible notre serveur ownCloud.

nano /etc/apache2/sites-available/owncloud.conf
Alias /owncloud "/var/www/owncloud/"
 <Directory /var/www/owncloud/>
 Options +Followsymlinks
 AllowOverride All

 <IfModule mod_dav.c>
 Dav off
 </IfModule>

 SetEnv HOME /var/www/owncloud
 SetEnv HTTP_HOME /var/www/owncloud
 </Directory>

Maintenant que notre configuration est enregistrée, nous devons activer ce site.

a2ensite owncloud.conf

Il reste quelques modules apache à activer pour rentre notre serveur ownCloud opérationnel.

a2enmod rewrite
a2enmod env
a2enmod mime
a2enmod dir
a2enmod headers
systemctl restart apache2

Enfin, il reste à créer un utilisateur dans la base de données avec les droits appropriés à notre serveur ownCloud.

Utiliser un mot de passe fort lors de la création de la base, remplacer PASSWORD

mariadb
CREATE USER 'owncloud'@'localhost' IDENTIFIED BY 'PASSWORD' ;
GRANT ALL PRIVILEGES ON *.* TO 'owncloud'@'localhost' WITH GRANT OPTION ;
FLUSH PRIVILEGES ;
quit

L’installation du serveur est maintenant terminée.

Vous pouvez vous rendre sur l’interface web d’ownCloud pour terminer sa configuration.

nom d'utilisateur : owncloud
mot de passe : PASSWORD
nom de la base : owncloud
adresse de la base : localhost

Pour cela, utilisez un navigateur internet et rendez vous sur l’URL de votre serveur. Elle dépendra de la configuration que vous aurez précédemment faite sur votre serveur. Chez moi l’URL est IP/owncloud.

Vous pouvez maintenant cliquer sur « Terminer l’installation ».

Raccourcis NANO à retenir

CTRL + A : Permet d’aller au début de la ligne
CTRL + E : Permet d’aller à la fin de la ligne
CTRL + Y : Permet de remonter de page en page
CTRL + V : Permet de descendre de page en page
CTRL + _ : Permet de se rendre au n° de ligne indiqué
CTRL + C : Permet de savoir à quel n° de ligne / colonne / caractère se trouve votre curseur
CTRL + W : Permet de faire une recherche
CTRL + D : Permet de supprimer un caractère
CTRL + K : Permet de supprimer une ligne complète (comme la commande dd sous Vi)
CTRL + O : Permet de sauvegarder votre fichier
CTRL + X : Permet de quitter nano
CTRL + G : Affiche l’aide
Autre truc important à savoir-faire, ce sont les copier / couper / coller sous nano.Pour ce faire, placez-vous devant la ligne à copier, puis faites CTRL + K pour la couper, suivi d’un CTRL + U pour la coller. Maintenant que cette ligne est en mémoire, vous pouvez aller la coller ailleurs.Autrement, si vous voulez sélectionner plusieurs lignes, faites un CTRL + ^ et déplacez les flèches du clavier pour surligner le texte qui vous intéresse. Ensuite un petit CTRL + K, CTRL + U et vous pourrez recopier ce passage ailleurs avec un autre CTRL + U.
Afficher numéro de lignes sous nano
nano -c nomdufichier

Passer de Debian Stable 9 Stretch à Debian Testing

Donc pour commencer avant toute chose, il faut ajouter les dépôts testing, dans le sources.list:
nano /etc/apt/sources.list
ce qui donne ceci :
deb http://ftp.fr.debian.org/debian/ testing main
deb-src http://ftp.fr.debian.org/debian/ testing main
deb http://security.debian.org/ testing/updates main
deb-src http://security.debian.org/ testing/updates main
deb http://ftp.fr.debian.org/debian/ testing-updates main
deb-src http://ftp.fr.debian.org/debian/ testing-updates main
Ensuite on lance la commande de mise a jour:
apt update && apt dist-upgrade
On redémarre la machine et on aura une Debian testing fonctionnelle.

Let’s encrypt, installation Certbot Debian 8 Jessie

Ajouter les dépôts backports
echo "deb http://ftp.debian.org/debian jessie-backports main" | sudo tee -a /etc/apt/sources.list
Mise à jour et installation des paquets
apt-get update && apt-get install python-certbot-apache -t jessie-backports -y
Obtenir un certificat sécurité
certbot --apache
les paquets Certbot sur votre système sont dotés d’un service cron qui renouvelle automatiquement vos certificats avant leur expiration. Puisque les certificats de Cryptage durent 90 jours, il est fortement conseillé de profiter de cette fonctionnalité.
certbot renew --dry-run
les certificats ce trouve dans ce répertoire : /etc/letsencrypt/live/

Installation serveur Debian 8 Jessie

Mettre a jour le serveur
apt-get update && apt-get upgrade -y
Installation apache2
apt-get install apache2
Création de l’utilisateur du site
adduser utilisateur
Création du dossier de votre site
mkdir /home/utilisateur/www
mkdir /home/utilisateur/logs
Changer les droits des dossier créer
chown utilisateur /home/utilisateur/www /home/utilisateur/logs
chgrp utilisateur /home/utilisateur/www /home/utilisateur/logs
Création d’un lien symbolique
ln -s /home/utilisateur/www /var/www/nomdedomaine.fr
Création du fichier de configuration du site
nano /etc/apache2/sites-available/nomdedomaine.conf
<VirtualHost *:80>
    ServerAdmin utilisateur@nomdedomaine.fr
 # Domaines gérés par ce virtualhost
    ServerName nomdedomaine.fr
    ServerAlias *.nomdedomaine.fr
 # Racine Web
    DocumentRoot /var/www/nomdedomaine.fr
 # Règles spécifiques s'appliquant à ce dossier
    <Directory /var/www/nomdedomaine.fr>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>
    # Où placer les logs pour cette hôte
    ErrorLog /home/utilisateur/logs/error.log
    CustomLog /home/utilisateur/logs/access.log combined
</VirtualHost>
Activation de la configuration du site
a2ensite nomdedomaine.conf
service apache2 reload
Ajouter un mod à apache2
a2enmod rewrite
service apache2 restart
Installation de PHP
apt install php5 libapache2-mod-php5 php5-curl php5-gd
Puis une fois l’installation terminée (pour relancer le serveur apache)
service apache2 restart
Installation d’un FTP
apt-get install proftpd
Décommenter # DefaultRoot ~ pour que chaque utilisateur reste dans son dossier personnel.
nano /etc/proftpd/proftpd.conf
service proftpd restart
Installation d’une base de données
apt-get install mysql-client mysql-server php5-mysql
Pendant l’installation il vous sera demandé de rentrer le mot de passe « root », ce mot de passe est très important, car il vous permet de vous connecter en tant qu’administrateur à votre base de données.
Installer PhpMyAdmin
apt-get install phpmyadmin
choix du serveur a paramétrer : Apache2
On redémarre Apache quand proposé
On se connecte par l’adresse http://xxx.xxx.xxx.xxx/phpmyadmin
Changer la page d’accueil du serveur
soit vous modifier la page index du serveur.
nano /var/www/html/index.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta http-equiv="content-language" content="fr-FR" />
<title>Index de l'espace personnel de utilisateur</title>
<link rel="icon" type="image/png" href="/favicon.png" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
Index de l'espace personnel de utilisateur.
<br>
<br>
<a href="https://nomdedomaine.fr">Mon site</a>
<br>
Bonne visite :)
</body>
</html>
soit vous faite une redirection de la page index vers un site.
nano /etc/apache2/sites-enabled/000-default.conf
Commenter # les lignes
#ServerAdmin
#DocumentRoot
#ErrorLog
#CustomLog
et rajouter une redirection
Redirect 301 / http://nomdedomaine.fr
service apache2 restart

Les alias avec bash

Editer le fichier de configuration.
cd /home/$USER/.bashrc
pour ajouter des alias voici de la forme:
alias code= »commande »
Exemple de fichier de configuration .bashrc
HISTSIZE=5000
alias ls= »ls –color »
alias grep= »grep –color »
alias ll= »ls -la »
alias lh= »ls -lh »
alias la= »ls -a »
alias igrep= »grep -i »
alias maj= »sudo apt-get update && apt-get upgrade -y »
alias gg= »ping google.fr »
alias lspci= »/usr/sbin/lspci »
alias youtube2mp3= »youtube-dl -t -x –audio-format mp3 –audio-quality 0″
alias youtube2mp4= »youtube-dl -t -f mp4″
alias shutdown= »sudo shutdown »
alias FUN= »mplayer -nocache http://streaming.radio.funradio.fr/fun-1-48-192 »
(A copier coller dans /root/.bash pour en bénéficier en root également)

Installation basique de searx sous Debian 8 Jessie

Mise a jour d’openssl
apt-get -t jessie-backports install openssl
apt-get -t jessie-backports install libssl-dev
Installation des dépendances systèmes nécessaires
apt-get install git build-essential libxslt-dev python-dev python-virtualenv python-pybabel zlib1g-dev libffi-dev libssl-dev
Installation de searx
cd /usr/local
git clone https://github.com/asciimoo/searx.git
useradd searx -d /usr/local/searx
chown searx:searx -R /usr/local/searx
Installation des dépendances python dans virtualenv
cd /usr/local/searx
virtualenv searx-ve
. ./searx-ve/bin/activate
pip install -r requirements.txt
python setup.py install
Configuration
Modifiez la phrase secrète du fichier
searx/settings.yml (ceci est une étape nécessaire pour la sécurité de votre application)
sed -i -e "s/ultrasecretkey/`openssl rand -hex 16`/g" searx/settings.yml
Ouvrez searx/settings.yml et baladez-vous dans les différentes options de configuration. Modifiez-les selon vos besoins et vos envies.
Vérification
Il est ici nécessaire d’être dans le virtualenv. Si vous n’y êtes plus :
cd /usr/local/searx
. ./searx-ve/bin/activate
Lancez searx :
python searx/webapp.py
Désactivez l’option de debug dans settings.yml :
sed -i -e "s/debug : True/debug : False/g" searx/settings.yml
Searx n’est pas dæmonisé (il ne tourne pas en arrière-plan). Cette dæmonisation est le rôle d’uwsgi.
Installation des paquets :
apt-get install uwsgi uwsgi-plugin-python
Créez le fichier de configuration /etc/uwsgi/apps-available/searx.ini.
nano /etc/uwsgi/apps-available/searx.ini
avec ce contenu :
[uwsgi]
# Quel est l'utilisateur qui fera tourner le code
uid = searx
gid = searx
# Nombre de workers (habituellement, on met le nombre de processeurs de la machine)
workers = 4
# Quels sont les droits sur le socket créé
chmod-socket = 666
# Plugin à utiliser et configuration de l'interpréteur
single-interpreter = true
master = true
plugin = python
# Module à importer
module = searx.webapp
# Chemin du virtualenv
virtualenv = /usr/local/searx/searx-ve/
Activez la configuration de l’application et relancez uwsgi
cd /etc/uwsgi/apps-enabled
ln -s ../apps-available/searx.ini
/etc/init.d/uwsgi restart
Avec Apache2 comme Serveur web
Ajoutez le module uwsgi :
apt-get install libapache2-mod-uwsgi
Ajoutez cette configuration /etc/apache2/sites-available/
nano /etc/apache2/sites-available/nano searx.conf
<Location /searx>
    Options FollowSymLinks Indexes
    SetHandler uwsgi-handler
    uWSGISocket /run/uwsgi/app/searx/socket
</Location>
Activer le site :
a2ensite searx.conf
Relancez Apache :
service apache2 reload

Installation addition invité VirtualBox

Dans la fenêtre où se trouve la machine virtuelle en cours d’exécution, sélectionnez Insérer l’image CD des Additions invité dans le menu Périphériques.
Pour Debian 8 Jessie
Installez les packages requis :
sudo apt-get install build-essential dkms
Montez le CD des Additions invité :
mount /media/cdrom
Exécutez le script d’installation des additions invité :
sudo bash VBoxLinuxAdditions.run
Redémarrez votre système
Pour Debian 9 Stretch
Installez les packages requis :
su
apt-get install build-essential dkms
Montez le CD des Additions invité :
mount /media/cdrom1
Exécutez le script d’installation des additions invité :
apt install linux-headers-4.9.0-4-amd64
sh /media/cdrom1/VBoxLinuxAdditions.run
Redémarrez votre système

Gestion profil Firefox

Firefox est hautement configurable. Outre le menu graphique (Edition ? Préférences), notez la page about:config qui donne accès à la quasi-totalité des options.
Pages « about: »
Il existe une myriade de page about: qui donnent accès aux informations du navigateur. En voici quelques unes qui peuvent s’avérer utiles :
about:plugins : donne des informations sur les greffons installés.
about:cache : quelques informations sur le cache du navigateur.
about:memory : informations sur la mémoire vive.
about:about : le meilleur pour la fin, la liste des pages about: \o/ !
Profils
Vous pouvez créer plusieurs profils pour un même utilisateur, qui ne partagent que le binaire. Chaque profil a une cache, un historique, une configuration séparée. Pour forcer Firefox à ouvrir la boite de dialogue profils utilisez l’option -ProfileManager :
firefox  -ProfileManager
L’option -P profile permet de choisir le profil.
Par défaut, une nouvelle fenêtre de Firefox se rattache automatiquement à une session existante. Pour éviter ça et lancer plusieurs sessions de Firefox (pour lancer plusieurs profils par exemple) utilisez l’option -no-remote.

Fonctionnement de youtube-dl

Télécharger une musique au format ogg
youtube-dl --extract-audio --audio-format ogg url
Télécharger une vidéo au format webm
youtube-dl -f option url
Afficher la liste des options de téléchargement
youtube-dl -F url
Télécharger la dernière version de youtube-dl
Décompresser le fichier télécharger
tar xzvf youtube-dl-20??.??.??.tar.gz
puis dans le dossier décomprésser
cd youtube-dl
installer et mettre a jour youtube-dl
sudo python setup.py install
Télécharger en mp3
youtube-dl -t -x --audio-format mp3 --audio-quality 0 url
Télécharger en mp4
youtube-dl -t -f mp4 url