Le blog de Stéphane Dalmard

Aucun commentaire

Adapter facilement le système de !bang, propre au moteur de recherche DuckDuckGo, sur Firefox.

Pour ajouter un !bang il suffit de se rendre sur le site visé => se placer dans le champ de recherche => clique droit => "Ajouter un mot-clé pour cette recherche" => choisir un mot-clé.

Par exemple je peux me rendre sur la page d’accueil de Wikipédia et choisir comme mot-clé !w. Il suffira ensuite de taper !w dans la barre d'adresse de Firefox suivit du mot recherché pour être redirigé vers la page souhaitée.

Exemples de quelques uns de mes !bang.

nb : Le point d'exclamation (!) n'est, bien sûr, pas obligatoire mais c'est une convention facilement mémorisable.

Aucun commentaire

Afin de limiter les risques liés à l'utilisation d'une iframe, le W3C propose l’attribut sandbox dans sa spécification du HTML5.

<iframe sandbox src=”...”></iframe>

Par défaut sandbox bloque toutes les interactions réalisables depuis une iframe.

Restrictions

  • Désactive le JavaScript sur l'iframe
  • les requêtes AJAX ne peuvent être lancées
  • Bloquer le stockage de cookies ou du localStorage
  • Bloque l'ouverture d'une nouvelle fenêtre, une popup
  • L’envoi de formulaire est interdit
  • Les plugins Flash, Silverlight ou encore les applets Java ne sont pas chargés
  • L’API Pointer lock, qui renvoit des informations liées aux mouvements de la souris, est bloquée

Autorisations

<iframe sandbox="valeur" src=”...”></iframe>

Sandbox accepte plusieurs valeurs autorisant autant d'interactions avec l'iframe.

  • allow-forms : l’envoi de formulaire est autorisé
  • allow-scripts : autorise l'execution de scripts
  • allow-same-origin : l’iframe reprend la même “origine” que la page, et ne fait plus face aux restrictions liées au mécanisme CORS (autorisation des requêtes AJAX, de l’utilisation du localStorage, de cookies…)
  • allow-top-navigation : l’iframe peut à nouveau accéder à la page parente
  • allow-popups : l’ouverture d’une nouvelle fenêtre/d’une popup est possible
  • allow-pointer-lock : l’API Pointer Lock est exploitable

ref:

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:

Aucun commentaire

Mes extensions Firefox:

Les indispensable

  • Decentraleyes - Protège du pistage lié à l'accès à des contenus "gratuits", centralisés. Accélère de nombreuses requêtes ("Google Hosted Libraries" et autres) en les servant localement, allégeant la charge des sites. Complète les bloqueurs de contenus habituels.
  • Disconnect - Make the web faster, more private, and more secure.
  • LastPass - LastPass, an award-winning password manager, saves your passwords and gives you secure access from every computer and mobile device.
  • pwgen - For Sysadmins / Network Engineers / and why not everybody who needs a quick password generator.. simple, yet efficient.
  • µBlock-origin - Un bloqueur de nuisances efficace, qui ménagera votre processeur et votre mémoire vive.
  • Google search link fix - This extension prevents Google and Yandex search pages from modifying search result links when you click them. This is useful when copying links but it also helps privacy by preventing the search engines from recording your clicks.
  • HTTPS Everywhere Chiffrez le Web ! L’extension Firefox HTTPS Everywhere protège vos communications en activant automatiquement le chiffrement HTTPS sur les sites le prenant en charge, même lorsque vous saisissez une URL ou cliquez sur un lien sans préfixe « https: ».
  • Want My RSS Firefox extension that restores some of RSS functionality which Firefox abandoned. Functionality includes: -Show indicator in the url bar if feed link available -Show preview page with rss feed

Les autres

  • Bloody Vikings! - Simplifie l'utilisation des adresses électroniques temporaires afin de protéger votre adresse réelle de spam. Supporte 10minutemail.com entre autres et anonbox.net.
  • ColorZilla - Advanced Eyedropper, Color Picker, Gradient Generator and other colorful goodies...
  • CookieKeeper - Gestionnaire de cookies amélioré. Conserver uniquement les cookies voulus.
  • Cookies Manager+ - Cookies manager to view, edit and create new cookies. It also shows extra information about cookies, allows edit multiple cookies at once and backup/restore them.
  • Firebug - Firebug integrates with Firefox to put a wealth of development tools at your fingertips while you browse. You can edit, debug, and monitor CSS, HTML, and JavaScript live in any web page...
  • FoxyProxy Standard - FoxyProxy est un outil avancé de gestion de proxy qui remplace complètement les possibilités limitées de Firefox en matière de proxy. Elle offre davantage de fonctionnalités que SwitchProxy, ProxyButton, QuickProxy, ProxyTex, TorButton, etc.
  • ImTranslator - ImTranslator traduit le texte, des mots et des pages Web entre plus de 90 langues. NEW: Traducteur Inline, Dictionnaire complet, l'accès à Google Translate, Microsoft Translator. La localisation de l'interface utilisateur à la volée.
  • Priv8 - Manage your tabs in sandboxes increasing your privacy!
  • Tails Download and Verify - A browser extension to download and verify Tails ISO images.
  • Video DownloadHelper - The easy way to download and convert Web videos from hundreds of YouTube-like sites.
  • Web Developer - The Web Developer extension adds various web developer tools to the browser.

Cf:

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

Techniques simples à mettre en œuvre pour limiter les attaques de type brute-force.

Temps de connexion

<?php usleep (300000);?>

La page ne sera exécutée qu'après 0.3 secondes.
Ce qui limite considérablement le nombre de requètes par seconde.
Seul un botnet peut alors être une réelle menace.

Nombres de connexions limitées

Bannir une IP pendant un certain temps après x tentatives (idem que pour les cartes bancaires).
ex: 24 heures de blocage après 3 essais.

ref: