Le blog de Stéphane Dalmard

Aucun commentaire

Afin de lancer calibre-server, depuis une connexion ssh, il est nécessaire de lancer une session screen pour quitter la session ssh en cours sans interrompre le processus du serveur calibre.

Installer screen:

sudo apt-get screen


  1. Ouvrir une session ssh
    ssh admin@ip
  2. Ouvrir une session screen
    screen -S session_calibre
  3. Lancer calibre en mode serveur :
    calibre-server
  4. Détacher la session "session_calibre" : ctrl + a + d
  5. Fermer la session ssh ctrl + d


Commandes screen basiques:

Lister les différentes sessions en activitées:

screen -ls

Reprendre la session:

screen -r nom_session


ref:

Aucun commentaire

Rappel

  • Afficher les règles en cours (root):iptables L --line-numbers
  • Réinitialiser toutes les règles: iptables -F
  • L'ordre est important et joue sur le filtrage

Configuration basique

iptables -A INPUT -p tcp --dport ssh -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -p tcp --dport imap2 -j ACCEPT
iptables -A INPUT -p icmp -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -P INPUT DROP

ref:

1 commentaire

Afin de générer un certificat https sur mon serveur distant (mutualisé) avec lets-encript. et n'ayant qu'un accès FTP (pas d'accès en console root), j'utilise Certbot.
Pour cela il est nécessaire de lancer let's encript sur le pc locale et d'envoyer les certificats via FTP sur le site distant.

Sur le pc locale

Créer le dossier cerbot et aller dans le répertoire crée

mkdir certbot && cd certbot

Récupérer certbot

git clone https://github.com/certbot/certbot

Génération du certificat

./certbot/letsencrypt-auto certonly --manual -d monsite.com

Pour prouver que je suis le propriétaire du site certbot demande de créer un fichier dans un répertoire spécifique.
En l’occurrence créer un fichier (à la racine du site) .well-known/acme-challenge/THyxasN35BQaTj-a7FASTqmT626fey1va51EO90PC7I contenant THyxasN35BQaTj-a7FASTqmT626fey1va51EO90PC7I.cbhiFNQ0DT6YQ1x9Nkfp20lYVcEg5ucjOsMjtfw3R1k

Make sure your web server displays the following content at
url://monsite.com/.well-known/acme-challenge/THyxasN35BQaTj-a7FASTqmT626fey1va51EO90PC7I before continuing:

THyxasN35BQaTj-a7FASTqmT626fey1va51EO90PC7I.cbhiFNQ0DT6YQ1x9Nkfp20lYVcEg5ucjOsMjtfw3R1k

If you don't have HTTP server configured, you can run the following
command on the target server (as root):

mkdir -p /tmp/certbot/public_html/.well-known/acme-challenge
cd /tmp/certbot/public_html
printf "%s" THyxasN35BQaTj-a7FASTqmT626fey1va51EO90PC7I.cbhiFNQ0DT6YQ1x9Nkfp20lYVcEg5ucjOsMjtfw3R1k > .well-known/acme-challenge/THyxasN35BQaTj-a7FASTqmT626fey1va51EO90PC7I
# run only once per server:
$(command -v python2 || command -v python2.7 || command -v python2.6) -c \
"import BaseHTTPServer, SimpleHTTPServer; \
s = BaseHTTPServer.HTTPServer(('', 80), SimpleHTTPServer.SimpleHTTPRequestHandler); \
s.serve_forever()"
-------------------------------------------------------------------------------
Press Enter to Continue

Vérifier sur le navigateur que le fichier est bien accessible à l'adresse créée.

Une fois le fichier créé et accessible sur le site distant il ne reste plus qu'à générer les certificats (appuyer sur Entrée). Ceux-ci (cert.pem, chain.pem, fullchain.pem, privkey.pem.) seront accessible dans le dossier /etc/letsencrypt/live/ suivit du domaine concerné.

Waiting for verification...
Cleaning up challenges
Generating key (2048 bits): /etc/letsencrypt/keys/0002_key-certbot.pem
Creating CSR: /etc/letsencrypt/csr/0002_csr-certbot.pem

IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/mondomaine.com/fullchain.pem. Your cert
will expire on 2017-05-24. To obtain a new or tweaked version of
this certificate in the future, simply run letsencrypt-auto again.
To non-interactively renew *all* of your certificates, run
"letsencrypt-auto renew"
- If you like Certbot, please consider supporting our work by:

Donating to ISRG / Let's Encrypt: url://letsencrypt.org/donate
Donating to EFF: url://eff.org/donate-le

Installation du certificat sur le site distant (via cPanel)

Gérer la liste des certificats: copier/coller la clé privée (privkey.pem) dans le champ Private Keys et le certificat (fullchain.pem) dans la section Certificates.

ref:

Aucun commentaire

Afin d'automatiser une connexion ssh sur un serveur distant il est nécessaire de créer une clé SSH pour ne pas avoir à renseigner le mot de passe manuellement, et ainsi pouvoir par exemple réaliser des sauvegardes régulières avec crontab et rsync sur le serveur.

  1. Générer la clé

    ssh-keygen -t dsa -f /home/admin/.ssh/cle_ssh

    La passphrase peut être vide pour indiquer qu'il n'y en a pas.

    Pour des raisons de sécurité OpenSSH7 ne suporte plus les clefs dsa, nous pouvons alors choisir d'utiliser l'algorithme ed25519.

    ssh-keygen -t ed25519
  2. Copier la clé sur le serveur distant

    scp -p /home/admin/.ssh/cle_ssh.pub  admin@xxx.xxx.xxx.xxx:/home/admin/.ssh/
  3. Autoriser les authorized_keys dans sshd_config

    emacs -nw /etc/ssh/sshd_config

    Décommenter la ligne : AuthorizedKeysFile %h/.ssh/authorized_keys

  4. Recharger SSH

    /etc/init.d/ssh restart

    ou

    /etc/init.d/ssh force-reload
  5. Copier la clé dans .ssh/authorized_keys

    cat cle_ssh.pub >> authorized_keys
  6. Il ne reste plus qu'à se connecter au serveur

    ssh -i /home/admin/.ssh/cle-ssh admin@xxx.xxx.xxx.xxx

ref:

Aucun commentaire

L'installation et la configuration d'apticron est simple et rapide mais nécessite un serveur de mail opérationnel. Cet article s’attardera donc sur la configuratiion d'un serveur de mail, en l’occurrence Exim4, sur Debian.

Apticron

Apticron permet d'être informé par mail des mises à jour possibles d'un système. Il s’agit d’un script,
appelé quotidiennement par cron , qui met à jour la liste des paquets disponibles et envoie un
courrier électronique à une adresse donnée pour lister les paquets qui nécessite une installation.

Installer apticron

sudo apt-get install apticron

Edition du fichier de configuration de apticron

emacs -nw /etc/apticron/apticron.conf

Modifier le cron d'apticron.

emacs -nw /etc/cron.d/apticron

Par défaut la vérification d'apticron se fait toutes les 10 minutes.

10 * * * * root if test -x /usr/sbin/apticron; then /usr/sbin/apticron --cron; else true; fi

Relancer cron


/etc/init.d/cron restart

Exim4


Configuration de Exim4


Voir les fichiers "/etc/mailname", "/etc/hostname", "/etc/hosts" pour préparer la configuration.


dpkg-reconfigure exim4-config

  1. Type de configuration : " Envoi via relais ("smarthost") - réception SMTP ou fetchmail "

  2. Nom de courriel du système : nom de la machine, suivi du nom de domaine, le résultat de la comande $ hostname -f

  3. Liste d'adresses IP  : 127.0.0.1 ; ::1 (ou laissez vide)

  4. Autres destinations  : laissez vide

  5. Machines à relayer : laissez vide

  6. Nom réseau ou adresse IP du système "smarthost" : le serveur de courriel (smtp) de votre FAI

  7. Faut-il cacher : NON

  8. Faut-il minimiser : NON

  9. Méthode de distribution : "Maildir"

  10. Faut-il séparer : NON


Éditez le fichier /etc/email-addresses et ajoutez les deux lignes suivantes :



user: votre-adresse-email
root: votre-adresse-email

Modifier le fichier /etc/aliases



user: votre-adresse-email
root: votre-adresse-email

Recharger et redémarrer



$ newaliases
$ update-exim4.conf
$ service exim4 restart

Pour les serveurs de mail nécessitant un mot de passe il faut éditer le fichier /etc/exim4/passwd.client


emacs -nw /etc/exim4/passwd.client

target.mail.server.example:login:password

Vérification:


$ echo -e "Mail envoyé le $(date)" | mail -s "Test mail" votre-adresse-email

Ref:


Aucun commentaire

Dans le cadre d'utilisation d'un serveur distant personnel accessible via ssh, j'utilise PAL comme agenda pour sa simplicité couplé à MSMTP comme client smtp basique.

PAL

Pal est un agenda pour système Unix/Linux, utilisable en ligne de commande.

Le fichier calendar.jferies doit être appelé par le fichier pal.conf pour ajouter à l'agenda les différents jours fériés français.
Chemin du fichier pal.conf : ~/.pal/pal.conf

calendar.jferies

#
# Jours fériés
#
# $FreeBSD: src/usr.bin/calendar/calendars/fr_FR.ISO8859-1/calendar.jferies,v 1.1.2.1 2000000205/27 12:15:06 dwmalone Exp $
#

[] France
# Jours chomés
00000101 Nouvel an
00000501 Fête du travail
00000508 Armistice 1945
00000714 Fête nationale française
00001111 Armistice 1918

# Jours fériés religieux
Easter Pâques
Easter+001 Lundi de Pâques
Easter+039 Ascension
Easter+049 Pentecôte
Easter+050 Lundi de Pentecôte
00000815 Assomption
00001101 Toussaint
00001225 Noël

# Les dates suivantes ne sont malheureusement pas fériées...

# Saisons
00000321 Printemps
00000621 Été
00000921 Automne
00001221 Hiver

# Changements d'heure
*0347 Passage à l'heure d'été

# Divers
*0547 Fêtes des mères
*0637 Fêtes des pères
*1047 Passage à l'heure d'hiver

MSMTP

Msmtp est un client smtp simple utilisable en ligne de commande pour envoi de courrier électronique.

Fichier de configuration .msmtprc:

$ emacs -nw .msmtprc

Crontab

Modifier la contrab

crontab -e

Envoyer un mail tous les jours à 8H00 renseignant sur les événements des sept jours à venir.

0 8 * * * pal --mail -r 7 | msmtp address@exemple.com

Envoyer un mail tous les premiers du mois à 8H00 renseignant sur les événements des trente jours à venir.

0 8 1 * * pal --mail -r 30 | msmtp address@exemple.com



Ref:


Aucun commentaire

Le fichier .htacess est un fichier très puissant pour configurer des serveurs web Apache. Il permet la modification des entêtes http envoyées au navigateurs, de définir

  • les spécification du codage (charset)
  • les pages d’erreurs personnalisées

  • les redirections/réécriture d’URL

Mais aussi les performances Web

  • mise en cache
  • Compression

Ainsi que la sécurité, via la restriction d’accès.

Fichier type

AddDefaultCharset UTF-8
AddCharset UTF-8 .html .css .js

Order allow,deny
Allow from all
Options -Indexes


Header unset Cookie
Header unset Set-Cookie

Header set Cache-Control "max-age=31536000"

Header set vary "Accept-Encoding"
Header append vary "User-Agent"
Header append Cache-Control "public"

Header append Connection "Keep-Alive"
Header append Keep-Alive "timeout=5, max=100"

FileETag None


ref :

Le fichier htaccess

Modifier les entêtes HTTP

Htaccess : performances et temps de chargement

Aucun commentaire

Cette page, appelée à évoluer, regroupe l'ensemble de mes outils et fiches techniques en ligne.


EMACS MEMENTO - EMACS MEMENTO 2

Emacs - Mémento au format pdf (raccourcies clavier d'emacs).


GNU Screen MEMENTO

Emacs - Mémento au format pdf (raccourcies clavier GNU Screen).


TEMPÉRATURE DE COULEUR

Petit pense-bête des différentes températures de couleur courantes pour régler au mieux la balance des blancs.


ANGLE ET VITESSE D'OBTURATION

Correspondance entre angle d'obturation et la vitesse d'obturation.


STENOPE

Calcul du diamètre d'un sténopé suivant l'équation de Stroebel ou celle de Colson, et calcul d'ouverture de diaphragme suivant la focale et le diamètre du sténopé.


CALCUL DE L’ÉCLAIREMENT REQUIS

Formule donnant l'éclairement moyen (en lx) à donner au sujet pour le filmer à une vitesse d'obturation (temps de pose) et sur un film de sensibilité ISO données.


PROFONDEUR DE CHAMP

Calcul de profondeur de champ.


DISTANCE HYPERFOCALE

Calcul de l'ouverture du diaph, calcul du cercle de confusion et calcul de l'hyperfocale.


GAMMES DE FOCALES

Gamme typique de focales pour film 35mm.


VITESSE D'OPTURATION ET FLOU DE BOUGE

Calcul de la vitesse d'obturation minimum pour éviter le flou de bougé.


LE CINEDICO

Dictionnaire de traductions de termes techniques du cinéma et de l’audiovisuel.


CALENDRIER LUNAIRE

Calendrier lunaire du site calendrier-365.fr.