Sécurisation TLS ProFTPd Unraid

Sécurisation TLS

Votre serveur est maintenant en place, cependant, tout ce qui transite entre votre serveur et votre Client FTP est envoyé en clair sur le Net, ce qui est loin d’être sécurisé.

Nous allons donc chiffrer le tout avec une sécurisation TLS (SSLv3 étant deprecated).

Commençons par créer un certificat SSL auto-signé :

sudo openssl req -new -x509 -days 365 -nodes -out /etc/ssl/certs/proftpd.cert -keyout /etc/ssl/private/proftpd.key

Vous devriez avoir un output de la sorte :

Generating a 2048 bit RSA private key
writing new private key to '/etc/ssl/private/proftpd.key'
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
Country Name (2 letter code) [AU]:FR
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:sd-xxxxx.dedibox.fr
Email Address []:me@mymail.tld

Renseignez les champs demandés par OpenSSL avec les bonnes informations.
sd-xxxxx.dedibox.fr peut bien évidemment être remplacé par votre nom de domaine si vous en avez un.

Maintenant nous allons forcer notre serveur FTP à utiliser cela pour générer une connexion chiffrée.

Créez le fichier /etc/proftpd/conf.d/tls.conf :

  <IfModule mod_tls.c>
    TLSEngine on
    TLSLog /var/log/proftpd/tls.log

    # TLSv1 Uniquement
    TLSProtocol TLSv1

    # N'autorise que les connexions sécurisées
    TLSRequired on

    # Renseigne l'emplacement des certificats
    TLSRSACertificateFile /etc/ssl/certs/proftpd.cert
    TLSRSACertificateKeyFile /etc/ssl/private/proftpd.key

    TLSVerifyClient off
    TLSRenegotiate none


Puis nous redémarrons notre serveur FTP :

How to Build and Run a 6 GPU mining rig for Zcash or Ethereum with Nvidia GTX 1070

blockops (50) dans cryptocurrency •  il y a 5 mois

GPU pricing got a little crazy this year for a few months, and I took a break from building new GPU mining rigs because they were too expensive. I believe AMD GPU’s are still a little overpriced and hard to buy, so I decided to build six Nvidia GPU based mining rigs.

AMD RX 480 and 580 GPU’s work really well on Ethash mining algorithms, and do a decent job on Equihash. Nvidia GPU’s are the opposite – they do better on Equihash and are decent with Ethereum.

If you watch my latest youtube video, CryptoCurrency Mining Strategies and What I am Mining Sept 2017 (below), you will see that I advocate mining with many different types of miners, and mining many different types of cryptocurrencies, all at the same time. For example, in the past few months I have mined BTC, DGB, BCH, ETC, EXP, ETH, UBQ, ZEN, ZEC, LTC, MUE, DASH, and others. I also run masternodes and stake different cryptocurrencies to participate in other crypto generating activities.

Although the leaders in the cryptocurrency mining space are BTC, ETH, LTC, DASH, ZEC, and XMR, there are benefits to mining lesser known cryptocurrencies, if you are able to hold them for a while. The smaller crypto’s are volatile, and as long as they have a good team developing and improving them, they will go up in price over time. By holding then converting a portion of your mined crypto’s to Bitcoin or Ethereum when the price doubles, you improve your mining profitability substantially. And as long as the cryptocurrency has good prospects, if you hold it for a long time it might go up in value 5x, 10x, or even 100x. This has happened in the past, and will happen in the future.

Anyway, to make a long story short, Nvidia GTX 1060, 1070, and 1080 GPU’s are good for mining ZEC and ZEN, and since I believe both project have good long-term prospects, I figured I needed to be making some Nvidia based GPU miners. This is a list of what to buy and how to set it up to get you mining quickly.

Bill of Materials

Equipment list – Links are to Amazon or Parallel Mining product page. Buy from wherever you can get the best deal!

  1. Motherboard – Biostar Motherboard TB250-BTC – $95
  2. Processor – Intel Celeron Kaby Lake 2.9GHz LGA 1151 processor – $41
  3. Memory – 4GB Single DDR4 DIMM 288-Pin Memory – $36
  4. SSD – EthosDistro 16GB with operating system and application pre-installed. – $49
  5. Case – ParallelMiner BAREBONE – ALL ALUMINIUM 6.1 GPU OPEN AIR MINING CASE – $220
  6. Power Supply – Corsair HX1200 1200W 80 Plus Platinum – $240
  7. Risers – ITHOO USB3.0 PCI EXPRESS 1X TO 16X EXTENDER RISERCARD ADAPTER W/ 24″ CABLE from parallel miner – Qty 6 – $64
  8. GPU – ASUS GeForce GTX 1070 8GB ROG STRIX OC Edition – $460 – qty 6 -> $2760
  9. Optional – ATX power switch – two pack – $10
  10. Case screws:
  11. Motherboard to case – PC Mounting Computer Screws M3 x 1/4-Inches Long – qty 50 – $2
  12. Risers and GPU’s to case – Maxmoral 200pcs Toothed Hex 6/32 SCREW 6 – 32 Computer – qty 200 – $9

Total Cost for Bill of Materials: ~$3500

Build Instructions

Here’s some basic instructions for the most efficient order of operations when building the machine. The idea is to get a basic computer built, troubleshoot any potential issues, install the operating system and application, then build the rest of the machine.

Hardware Build

  1. Assemble the Case
  2. Put the CPU, CPU fan, and memory on the motherboard. Plug in the CPU fan.
  3. Optional – attach the ATX power switches and LED’s to the power header.
  4. Plug the SATA cable into the motherboard.
  5. Put the motherboard in the case and screw it in with the smaller screws.
  6. Attach the power supply to the right side of the case. Use the screws that came in the box. Attach power cables from the power supply to the Motherboard, CPU power, SSD.
  7. Screw in one of the PCI-E Riser cards in the second slot (right above the CPU fan), plug it into the second PCI-E slot on the motherboard closest to the processor, and plug in power from the power supply.
  8. Put a GPU into the PCI-E riser card, screw it into the case, and attach a PCI-E power cable to it.
  9. Attach a keyboard to the motherboard and HDMI monitor to the GPU card.
  10. Plug the power cord into the power supply, turn on the power switch.
  11. Press the ATX power button, or short the power button header pins with a screwdriver. The machine should boot.

If it doesn’t boot, this is the time to do basic troubleshooting. Don’t add any more graphics cards until you get at least one working.

If it does boot, configure the BIOS, connect an Ethernet cable to the network that can get to the internet, and reboot.

Motherboard BIOS Settings

Turn off unneeded services on the BIOS, keep all the PCI settings on Auto, set the graphics TOLUD to 3.5GB. Make the power come on whenever power is applied to the board. Here is a set of pictures for BIOS settingsfor a similar motherboard.

Setting up EthosDistro mining operating system

This is a purpose built version of Linux that is optimized for GPU mining. It works really well, better than running Windows or Ubuntu for mining. By using EthosDistro, I save time and don’t need to mess around with the operating system. You can, of course, use the same hardware build and run Windows or Linux and mine with it, but I recommend using a purpose built operating system.

What I really like about EthosDistro is how it has settings for adjusting power, fans, core clock speed, and memory clock speed. This allows for overclocking and power limiting of the GPU’s. You can also set up a single configuration file on a webserver, and by changing one file on your miner, have it go to that configuration file on boot, pull its config, and start mining. It even checks the file every few minutes while running, so it’s possible to reboot the miner to have it accept new settings.

After setting the BIOS, connecting Ethernet, and rebooting, EthosDistro boots to a screen that is more user-friendly than just a command line:

This shows one GPU is successfully mining Ethereum. There are a few important pieces or information you need from this screen.

  • IP address of the miner itself – access by SSH – this one is at
  • name of the miner – this one is e7423e
  • URL of the website with statistics. Depends on the IP address of your location. – this one is http://a127f5.ethosdistro.com

It is mining to the EthosDistro address. That needs to be changed. I recommend not using this screen for making changes, and instead using SSH from your PC. Here are some options for SSH on different operating systems:

  • Linux – use the Terminal command line
  • Mac – use the Termminal command line
  • PC – use the Bash command line, or download and use Putty

If you don’t know the first thing about Linux you may want to learn at least the basics. Get started learnin Linux nhere.

Setting up EthosDistro to Mine for You

The screen shows the IP address. SSH to the IP address like so:

ssh ethos@x.x.x.x
(enter password live)

The system is designed to download a file from a website and run. If you don’t want it do that, edit remote.conf with nano or vim, and make it a blank file. When the system boots, it will copy whatever file is referenced in remote.conf into local.conf, unless there is nothing in the remote.conf file.

For just a single miner, edit the local.conf file with nano or vim to configure the miner to work for you. Here is an example configuration for mining Zcash. Put this at the beginning of the local.conf file:

globalminer ethminer
maxgputemp 90
stratumproxy enabled
flags --cl-global-work 8192 --farm-recheck 200
globalfan 85
autoreboot 12
globalpowertune 7

#zcash flypool
ewbf-zcash=proxywallet t1baES7LZ8Wx1mATYqQxeCShQwVbwTgnhuU
ewbf-zcash=proxypool1 us1-zcash.flypool.org:3333

# nvidia miners
miner 4288a0 ewbf-zcash

# nvidia
#pwr 4288a0 160 160 160 160 160 160
#cor 4288a0 1923 1923 1923 1923 1923 1923
#mem 4288a0 4314 4314 4314 4314 4314 4314

I like to keep the configurations for multiple mining pools in the file, commented out with the # symbol. That way if I want to change what I am mining I can just alter the configuration without looking everything up again. Before you start mining, you definitely want to have a wallet address of your own to mine to, which in this configuration is set by the proxywallet configuration item.

For any Bitcoin based cryptocurrencies, like ZEC and ZEN, I actually prefer to mine to a software wallet, then transfer to a hardware wallet every week or two. At this point, you can mine to a hardware wallet for ETH, ETC, and ZEC, and a software wallet for ZEN.

If you mine to a hardware wallet or exchange, change your pool settings so it only deposits once a day. More than once a day deposit into a hardware wallet or exchange can cause issues. And perform maintenance on your hardware wallet!

After you get the miner working with 1 GPU, then get the miner working with all 6 GPU’s. I like to plug them in one at a time then reboot, so I can figure out if I have a bad riser or card. The most common problem you will probably have is bad risers. I always order extra so I can quickly swap out a bad riser.

EthosDistro Documentation

There are two main sources of documentation for EthosDistro. The first is the local.conf file. A working example of the pool.txt for ethereum is posted online, with all the comments and examples. The pool.txt and local.conf file documentation is dense, so it takes a few times reading it through to figure it out. I had to read it through about 10 times before I understood how to change the settings to make it work. The second source of documentation is the EthosDistro Knowledge Base.

If you have more than one GPU miner, or want to be able to make changes remotely, you can create a text file and post it on a web server. The example above is a portion of my web server based configuration file. A fuller one is below:

globalminer ethminer
maxgputemp 90
stratumproxy enabled
flags --cl-global-work 8192 --farm-recheck 200
globalfan 85
autoreboot 12

globalpowertune 7

proxywallet 0x9F0EBB3e7A799e7F974e2F0cC5b5869132d1C4C5
proxypool1 us1-etc.ethermine.org:4444
proxypool2 us2-etc.ethermine.org:4444

#proxywallet 0x5E517e1E4E978deBca3752B0ac64CB34F7dEb86F
#proxypool1 us1.ethermine.org:4444
#proxypool2 us2.ethermine.org:4444

#zencash luckpool
claymore-zcash=proxywallet znT2g6zxEyFPhDTVN9QF9XrDvPzbWdr71sG
claymore-zcash=proxypool1 ssl://luckpool.org:3058
ewbf-zcash=proxywallet znT2g6zxEyFPhDTVN9QF9XrDvPzbWdr71sG
ewbf-zcash=proxypool1 luckpool.org:3057

#zcash flypool
#claymore-zcash=proxywallet t1baES7LZ8Wx1mATYqQxeCShQwVbwTgnhuU
#claymore-zcash=proxypool1 ssl://us1-zcash.flypool.org:3443gethelp
#ewbf-zcash=proxywallet t1baES7LZ8Wx1mATYqQxeCShQwVbwTgnhuU
#ewbf-zcash=proxypool1 us1-zcash.flypool.org:3333

# nvidia miners
miner 4288a0 ewbf-zcash
miner 428a3a ewbf-zcash

# nvidia
pwr 4288a0 160 160 160 160 160 160
cor 4288a0 1923 1923 1923 1923 1923 1923
mem 4288a0 4314 4314 4314 4314 4314 4314

pwr 428a3a 160 160 160 160 160 160
cor 428a3a 1984 1984 1984 1984 1984 1984
mem 428a3a 4360 4360 4360 4360 4360 4360

# amd miners
miner 315e24 claymore-zcash

#amd miners
cor 315e24 1226 1226 1226 1264 1226 1226
mem 315e24 2000 2000 2000 1750 1750 1750
pwr 315e24 5 5 5 5 5 5

#reboot - increment number to reboot
reb 4288a0 26
reb 428a3a 26
reb 315e24 26

Put just the url, nothing else, in the remote.conf file. The first time I did this I left in two comment lines, then the url, and it did not work. My remote.conf file has only one line, and looks like this:


There are many different ways to host a text file on a webserver, but that is beyond the scope of this article.

Useful Commands for EthosDistro

I only use a few commands when checking on miners.

gethelp will create a url with lots of information about the system I use that to check what the actual speed of the GPU’s are:

show miner gives an output of the miner log. For EWBF it looks like this:

Operating EthosDistro and Checking the Panel

With your copy of EthosDistro, you get a web panel with realtime statistics for every miner at your location. This is a portion of the GPU miner panel I am running at my medium size mining location:

Here is the link to the current page http://48061f.ethosdistro.com.

You can see some of the miners have issues and are not running all 6 GPU’s. Those issues are due to bad risers – I got a bad batch from a different supplier I tried. Sometimes with bad risers they just don’t work. With this batch, the bad risers run for 1-3 hours, then stop. It makes troubleshooting tedious and slow. As soon as I get some better ones, I am going to be a lot happier.

Tuning the GPU’s for Maximum Performance

Nvidia GPU’s are very easy to tune with EthosDistro. In the example configuration above, I included three tuning settings. How you set them depends on what you want to accomplish. I prefer a mix of maximum hash rate with moderate power usage. Others try to maximize the hash per watt.

For tuning the power, you can see the max power of each of the GPU’s is 200 Watts in the gethelp output. I found that setting the maximum power to 160 watts worked the best. After that, I worked to increase the memory speed as much as possible. In the the case of the ASUS Strix I was able to raise the memory speed from the default of 3802 to 4360. When operating, ethosdistro will turn the GPU processor speed down to keep the card within power limits. As you can see in the graphics above, this tuning produced about 460 H/s per GPU, for a total of 2745.

How Much Will the GPU Miner Earn?

I usually put my miners on one cryptocurrency and leave it there for a month or two. Since prefer to mine and hold, I like to mine a cryptocurrency that has less competition. Some people are not able to mine and hold, and instead must mine and sell the rewards that they mine. I still like to make sure that I am mining one of the more profitable coins, so as long as it is close to the most profitable, I am fine with that.

Check the potential profitability at WhatToMine.com or Coinwarz.com. For this specific configuration of six GTX 1070’s at 2745 H/s and 1050 watts, I entered the info up top. These GPU’s will hash Ethereum at about 170 MH/s, so I put that in for comparison also. These are the settings:

This is the result:

All five equihash coins are fairly similar in profitability. HUSH, ZEC, KMD, ZCL, and ZEN are all similarly profitable on the calculator, so any would be a good candidate to mine and immediately sell. Nicehash is an interesting option also – if you point your GPU miner at it you will get paid in Bitcoin. For mining and holding, you should do your research and determine which ones you think have the longest term potential to increase in usefulness, value, and price.

At about $7.50 profitability per day, that’s about $225 per month, or $2700 per year. Assuming everything stays the same (system hash rate for each coin, price, etc.), the 6 rig GPU system gets paid back in about 15 months. At this point in time, Zcash has a price of $260.

Now, to double-check the Whattomine calculator against reality, you have to check your mining pool. For the past few days I have been mining Zcash on flypool, so let’s take a look at what the hashrate has been there, and what the payouts have been:

The hashrate for the 27 miners I have mining ZEC right now has averaged about 44.6 kH/s. Most of these miners are AMD GPU based, and have lower equihash hash rates of 1800 H/s.

For the 45 KH/s, flypool is estimating about a $5900 per month payout. That does not include my cost of electricity, but a quick couple of calculations shows that the payout estimate is $0.132 per 1 H/s per month. With 2750 H/s, that’s $364 revenue per month per Nvidia miner. If each miner is using 1050 Watts, that’s 756 kW-hr per month. At $0.10 per kW-hr, the electricity cost per miner is $75.60, so net profit per miner is about $288. That’s pretty close to the WhatToMine calculation.

Profitability, however, is a constantly moving target. Zcash has been as low as $170 and as high as $450 per ZEC. If it is a cryptocurrency you believe in, mine it, hold it, and sell some when the price spikes higher to help offset your costs.


I like GPU miners. They are straighforward to build, flexible, and profitable. You can start with however much you can afford, and add GPU’s as you go. For most people just getting into mining, I tell them that it is great to have grand plans, but that they should start mining with just one miner first, because it is a learning experience. After they run out of room at their house or apartment, then they can look at getting more and putting them into a place that has more electricity and cooling.

Cryptocurrency mining is for everyone who wants to participate – best of luck!

More at
Block Operations Blog
Block Operations YouTube

Monitorer votre infra avec Telegraf, InfluxDB et Grafana

Monitorer votre infra avec Telegraf, InfluxDB et Grafana

Dans un article précédent, nous avons vu comment monitorer avec Prometheus et Grafanaune infrastructure dynamique basée sur Kubernetes.

Nous allons voir aujourd’hui comment monitorer une infrastructure plus classiqueavec Telegraf pour la collecte de métriques, InfluxDB pour le stockage et Grafana pour l’affichage et l’alerting. Nous nommerons cette solution TIG, dans la suite de cet article. Nous avons choisi ces outils, mais ils peuvent être remplacés par d’autres. Nous allons comparer également cette solution à d’autres outils du marché (Zabbix et Prometheus)


Telegraf Architecture


Telegraf est un agent de récupération de métriques, 1 seul agent est nécessaire par VM. Cet agent sait récupérer des métriques exposées au format Prometheus et propose 2 modes de récupération des métriques, via :

  • push : la métrique est poussée dans Telegraf par le composant qui l’expose
  • pull : Telegraf récupère la métrique en interrogeant le composant qui l’expose (le mode le plus utilisé)

Les métriques sont insérées au fil de l’eau dans InfluxDB.


InfluxDB est une Time Series Database (TSDB) écrite en Go dont les principaux avantages sont les performances, la durée de rétention importante et la scalabilité (nous verrons plus loin sous quelles conditions).


Grafana est un outil supervision simple et élégant, permettant de s’intégrer à une TSDB, ici InfluxDB. Grafana expose dans des dashboards les métriques brutes ou agrégées provenant d’InfluxDB et permet de définir de manière honteusement simple des seuils d’alertes et les actions associées.


Cas d’utilisation

Dans cet article, nous allons monitorer une architecture simple :

  • une application web en Go exposée derrière un Nginx
  • une base de donnée Mysql sollicitée par un cron

Telegraph permet de récupérer par le biais de plugins les métriques des composants, ainsi que les métriques systèmes. Dans le cas nominal, Telegraf récupère ses métriques en mode pull. Cependant, dans le cas d’un cron ou d’un batch qui s’exécute périodiquement, la récupération des métriques se fait en mode push (c’est au cron ou au batch d’envoyer les métriques à Telegraf). Pour ce cas d’usage, nous allons utiliser le plugin http_listener qui permet à Telegraf d’écouter en http sur un port afin de récupérer les métriques envoyées par le cron/batch.

Telegraf cas d'utilisation



Pour cet article, l’installation se fera sous Debien Stretch


Ajoutons le repo APT officiel d’InfluxDB :

curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add -
source /etc/lsb-release
echo "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list

Installons le package :

sudo apt-get update
sudo apt-get install influxdb

Démarrons le service :

sudo systemctl start influxd


Ajoutons le repo APT officiel de Telegraf :

curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add -
  source /etc/os-release
  test $VERSION_ID = "7" && echo "deb https://repos.influxdata.com/debian wheezy stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
  test $VERSION_ID = "8" && echo "deb https://repos.influxdata.com/debian jessie stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
  test $VERSION_ID = "9" && echo "deb https://repos.influxdata.com/debian stretch stable" | sudo tee /etc/apt/sources.list.d/influxdb.list

Installons le package :

sudo apt-get update && sudo apt-get install telegraf

Démarrons le service :

sudo systemctl start telegraf


Ajoutons le repo APT officiel de Grafana :

curl https://packagecloud.io/gpg.key | sudo apt-key add -
echo "deb https://packagecloud.io/grafana/stable/debian/ jessie main" | sudo tee /etc/apt/sources.list.d/grafana.list

Installons le package :

sudo apt-get update
sudo apt-get install grafana

Démarrons le service :

systemctl daemon-reload
systemctl start grafana-server



Nous allons créer une base de données pour pouvoir pousser les données remontées par Telegraf :

influx -execute "CREATE DATABASE influx_db"

Créons l’utilisateur influx_user :

influx -execute “CREATE USER influx_user WITH PASSWORD 'influx_password'”
influx -execute “GRANT ALL ON influx_db TO influx_user

Il est possible de créer une retention policy pour déterminer la durée de conservation des données :

influx -execute ‘CREATE RETENTION POLICY "one_year" ON "influx_db" DURATION 365d’


Telegraf fonctionne sous forme de plugin à activer pour récupérer les métriques. L’écosystème de plugins est riche : il y a des plugins pour monitorer nginx, cassandra, haproxy, postgresql… Nous allons nous intéresser à quelques plugins en particulier pour notre exemple. Dans l’ensemble, les plugins sont simples à configurer.

Nous allons voir ici des extraits de configuration.

Mode pull

Métriques systèmes

Les plugins permettant de remonter les métriques systèmes :

  • cpu
  • disk
  • diskio
  • kernel
  • mem
  • processes
  • swap
  • system
$ head /etc/telegraf/telegraf.d/system.conf
## Whether to report per-cpu stats or not
percpu = true
## Whether to report total system cpu stats or not
totalcpu = true
## If true, collect raw CPU time metrics.
collect_cpu_time = false
Métriques MySQL
$ head /etc/telegraf/telegraf.d/mysql.conf

servers = ["db_user:db_password@tcp("]
Métriques au format prometheus

Pour notre exemple, nous avons une application en Go qui expose des métriques au format prometheus sur l’url http://localhost:8080/metrics.
Nous allons utiliser le plugin prometheus pour récupérer ces données :

$ cat /etc/telegraf/telegraf.d/app.conf

urls = ["http://localhost:8080/metrics"]

Mode push


Le plugin http_listener fonctionne en mode push. Il ouvre un port http et attend qu’on lui pousse des métriques.

$ cat /etc/telegraf/telegraf.d/http_listener.conf

## Influx HTTP write listener
## Address and port to host HTTP listener on
service_address = ":8186"

## timeouts
read_timeout = "10s"
write_timeout = "10s"

Il faut ensuite envoyer les métriques au format InfluxDB line-protocol :

$ curl -i -XPOST 'http://localhost:8186/write' --data-binary 'account_deleted,host=server01,region=us-west value=32 1434055562000000000'

Configuration du backend

Pour configurer le backend, nous allons utiliser le plugin output InfluxDB.

$ cat /etc/telegraf/telegraf.conf
urls = ["http://localhost:8086"]
database = "influx_db"
username = "influx_user"
password = "influx_password"

Pour finir, redémarrons le service pour prendre en compte la configuration :

sudo systemctl restart telegraf

La configuration des plugins est documenté exhaustivement dans le fichier de configuration de base : /etc/telegraf/telegraf.conf


La première étape dans Grafana est d’ajouter la source de donnée (InfluxDB dans notre cas). Allons dans “Datasource” puis “Add Datasource” et ajoutons la base Influxdb.

Database : influx_db
Username : influx_user
Password : influx_password

Grafana - Add data source

Ensuite pour créer les dashboards, vous pouvez récupérer des dashboards de la communauté Grafana ou créer vos propres dashboards. Pour notre exemple, nous avons importé le dashboard suivant prévu pour Telegraf.

Grafana - Dashboard

Il est possible d’ajouter des alertes dans les dashboards, mais nous n’allons pas détailler ce point dans cet article. Vous pouvez trouver des informations dans la documentation.

Note : Si vous utilisez Grafana en HA, pour le moment l’alerting n’est pas implémenté en mode cluster. Du coup, il faut s’assurer de l’activer sur un seul des noeuds pour ne pas recevoir les alertes en double. Néanmoins, si le noeud tombe, il n’y a plus d’alerting.


TIG vs Zabbix

Avantages de TIG :

  • La configuration est plus simple (métriques et graphes)
    • Pour récupérer une nouvelle métrique, il suffit de configurer en quelques lignes un plugin dans Telegraf, puis créer un dashboard dans Grafana.
  • La configuration est plus souple
    • Dans Zabbix on a besoin de décrire précisément chacune des métriques remontées, alors que dans TIG, InfluxDB n’a pas besoin de connaître la métrique à l’avance pour pouvoir la stocker.
  • Simple sur une infra dynamique
    • Exemple: Autoscaling sur les principaux cloud provider, les VMs nouvellement créés (avec Telegraf configuré) poussent auto-magiquement (sans configuration supplémentaire) dans InfluxDB.
  • Historique plus complet
    • La profondeur d’historique de Zabbix et d’InfluxDB est équivalente, néanmoins  Zabbix dispose d’une stratégie d’échantillonnage (configurable) entraînant une dégradation de la qualité de la donnée sur le long terme.
  • Les dashboards dans Grafana sont plus conviviaux et plus simples


Avantages de Zabbix :

  • Gestion des droits
    • La gestion des droits est plus fine sur Zabbix
  • Utilisé en prod depuis des années
    • Release 1.0 sorti le 23 mars 2004
    • Stable, complet et reconnu
  • Ressources de la communauté (templates, alertes, agent …)
    • Les agents Zabbix sont disponibles pour de nombreux systèmes d’exploitation
    • De nombreux templates pour configurer les métriques/alertes/graphes sont disponibles sur internet


TIG vs Prometheus

TIG vs Prometheus

Avantages de  TIG :

  • Historique plus complet (plusieurs années vs plusieurs heures/semaines)
    • Le but premier de Prometheus est le monitoring temps réel, la rétention par défaut est de 1 mois. Il est cependant possible d’augmenter cette rétention.
  • Besoin d’un seul agent par VM
    • Telegraf permet de récupérer plusieurs métriques avec un seul agent et pousse les données dans InfluxDB.
  • C’est l’agent Telegraf qui envoie les données à InfluxDB
    • Pas besoin d’ouvrir de multiples ports comme c’est le cas avec Prometheus.


Avantages de Prometheus :

  • Prometheus peut utiliser des services discovery pour savoir quels sont les services à monitorer
    • Exemple: Dans des environnements type Kubernetes, Docker, Prometheus est particulièrement adapté pour récupérer les métriques de conteneurs à durée de vie variable.



Dans la stack TIG nous avons apprécié la simplicité d’installation et de configuration, la souplesse de collecte des métriques et la profondeur d’historique.

La version opensource d’InfluxDB ne scale pas mais il est possible de scaler en passant sur les versions payantes InfluxEnterprise ou InfluxCloud. Nous n’avons, à l’heure actuelle, pas de retour d’expérience concernant ces deux derniers produits.

Pour la scalabilité, il est également possible d’utiliser OpenTSDB qui est une “Time Serie Database” open source, mais elle est bien plus compliquée à installer, et nous n’avons pas de retour sur son utilisation.

Il est possible de mettre Grafana en HA. Néanmoins, le mode cluster de l’alerting n’est pas encore implémenté. Cela signifie que soit on ne définit les alertes que sur un nœud, soit on les définit sur tous les nœuds mais les notifications seront dupliquées.

La modularité de cette stack nous permet si besoin d’utiliser :

  • d’autres collecteurs tels que Snap  (dans le cas, par exemple, où Telegraf ne proposerait pas de plugin adapté).
  • d’autres outils d’alerting tels que Kapacitor que nous étudierons prochainement.

Le cas d’utilisation que nous avons présenté est disponible sur ce repo : https://gitlab.octo.com/tpatte/monitoring_influxdb


Téléinfo EDF Arduino sans fil avec RFXCOM

Source : http://domotique.web2diz.net/teleinfo-edf-arduino-sans-fil-avec-rfxcom/

Bonjour à tous,

voici un nouveau mini projet qui me trotte dans la tête depuis un bon moment. J’utilise Domoticz avec un Rasberry B+ et RFXCOM depuis plusieurs mois.

Je récupères les trames téléinfo de mon compteur EDF grâce à un montage avec un optocoupleur.  (vous trouverez les explications détaillées du montage sur le site magdiblog.fr par exemple).

Tout fonctionne très bien et je récupère de belles courbes sur Domoticz :


Téléinfor EDF sur Domoticz

Comme je souhaiterais me passer de la liaison filaire entre mon compteur EDF et mon Raspberry je souhaiterais pouvoir transmettre les informations relevées sur mon compteur à mon Rasberry via le RFXCOM et donc par onde radio 443Mhz.

Pour se faire je vais utiliser un Arduino nano qui permettra de lire les trames Téléinfo et de les transmettre via ondes Radio grâce à un émetteur RF 443Mhz.

Matériel :

  • Rasberry B+ avec Domoticz  (39€)
  • Module USB RFXCOM (110€)
  • Adruino Nano USB (2.5€)
  • Optocoupleur SFH620A-x (ref exacte SFH620A-3)  (4,20€)
  • Module RF 433Mhz (1€)
  • Plusieurs résistances (~1€)

Donc si comme moi vous avez déjà un Raspberry, le module RFXcom et le montage optocoupleur vous n’aurez pas plus de 5€ à rajouter pour avoir le module téléinfo RF.

Etape 1 : Montage électronique partie téléinfo 

Comme d’habitude, je ne vais pas réinventer le roue, vous trouvez sur internet de multiples schémas qui expliquent le montage avec optocoupleur nécessaire pour récupérer les trames téléinfo de votre compteur EDF.

Je vous conseille par exemple :

Pour ma part j’utilise le PIN 8 pour réceptionner les données téleinfo.

Etape 2 : Montage électronique partie émeteur RF 

Très simple, dans mon cas j’utilise le PIN 3, donc Data sur PIN 3, GND sur GND et +VCC sur 5v de la carte Arduino.

A ce stade vous devez avoir votre Arduino Nano avec l’information de téléinfo qui arrive sur le PIN 8 et le module RF 433Mhz qui émet via le PIN 3.

Module téléinfo sans fil

Module téléinfo sans fil (A noter que pour simplifier le schémas les résistance R1 et R2 de l’optocoupleur ne sont pas symbolisées)

Etape 3 : Code pour Arduino

j’ai fais pas mal de recherche. Je suis loin d’être capable d’écrire un code complet aussi complexe. Alors j’ai trouvé par exemple sur le site worldofgz.com [REF] un code qui pourrait bien m’aider. Malheureusement il utilise 2 ports serials alors que le Adruino Nano n’en possède qu’un.

Le code que l’on trouve sur le site www.domotique-info.fr [REF] traite très bien le signal téléinfo mais il manque la partie qui envoie l’information sur l’émeteur RF.

J’ai finalement trouvé quelque chose qui correspond exactement à mon besoin, un code qui va lire les trames téléinfo puis les envoyer vers RFXcom en simulant un OWL180. C’est un peux le même principe que ce que j’ai déjà fait pour les sondes thermomètres [Voir : Simulation sonde Oregon avec Atmega ).

Ce code, disponible sur le site connectingstuff.net, s’inspire lui même des références si dessus. L’original peux être trouvé ici. J’ai à mon tour adapté ce code, vous trouverez ma version ici  :  teleinfo_rf.ino

Etape 4 : c’est fini ! 

Une fois tout bien branché comme expliqué dans les étapes 1, 2, 3  domoticz devrait identifier un nouvel appareil comme ceci :


Puis vous pourrez voir de belles courbes EDF comme ceci :

téléinfo EDF RF

Courbes consommation EDF avec module RF

J’espère que cet article vous permettra d’avancer. Comme vous le voyez j’ai pas mal réutilisé les information trouvées sur internet. J’ai juste consolider le tout sur une seule page et partagé le tout avec vous.

Ce code a été adapté pour les compteurs triphasés. Pour voir le code adapté à un compteur triphasé allez voir sur le super article sur le site petitssuisses.com. Lien de l’article  : Téléinfo ERDF sans fil pour compteur triphasé)

Dropbox Backup sur Plesk

How to configure Dropbox backups in Plesk


source : https://www.a2hosting.com/kb/a2-hosting-products/windows-hosting/configuring-dropbox-backups-in-plesk

This article describes how to configure Dropbox backups in Plesk. You can do manual Dropbox backups, or you can configure automatic daily backups.


To configure Dropbox backups for your account, follow these steps:

  1. Log in to Plesk.
    If you do not know how to log in to your Plesk account, please see this article.
  2. In the right sidebar, click Dropbox Backup:Plesk - Dropbox Backup icon
  3. At the Dropbox login page, type your Dropbox e-mail and password.
    If you are already logged in to Dropbox, the Dropbox login page does not appear.
  4. At the folder access page, click Allow:Plesk - Dropbox - Allow access
  5. The Plesk Websites & Domains page appears:Plesk - Dropbox - Websites and Domains page
    • To create a backup immediately, click Back up Now.
      Depending on the size of your account, it may take several minutes to create the backup. When the backup is complete, Plesk uploads it to your Dropbox account automatically. Additionally, the backup appears on the Repository tab in Plesk.
    • To view any tasks that are currently running, click the Current Tasks tab.
    • To change Dropbox settings, click the Settings tab. To enable a scheduled backup, select the Enable Scheduled Backup check box, and then in the Scheduled Time (daily at) text box, type the time when you want the backup to run. Click OK.


For more information about Dropbox, please visit https://www.dropbox.com.

La liste de mes « 101 Lifetime Goals »

Voici ma liste, et les objectifs que j’ai atteints jusqu’à maintenant sont en caractères gras.

Voyage :

Je voyagerai dans les endroits suivants :

  1. Rio de Janeiro, Brazil
  2. Naples, Italie
  3. Australie
  4. Tokyo, Japon
  5. Amsterdam, Pays-Bas
  6. Los Angeles
  7. New York
  8. Barcelone, Espagne
  9. Atlanta
  10. Miami
  11. Pondichery, Inde
  12. Dubaï

Je visiterai et je verrai les sites remarquables suivants :

  1. Parc Güell, Espagne (comme dans le film l’Auberge Espagnole..)
  2. Taj Mahal, Inde
  3. La Grande Muraille de Chine
  4. Le Machu Picchu, Pérou
  5. La Pyramide de Khéops, Égypte
  6. Les Chutes d’Iguazu, Brésil – Argentine
  7. La Baie d’Halong, Vietnam
  8. les chutes du Niagara

Aventure :

J’irai :

  1. assister à une finale de Ligue des Champions
  2. faire du surf à Hawaï
  3. faire du rafting en rivière
  4. voir une aurore boréale
  5. assister à un match de NBA au premier rang
  6. passer un nouvel an à Time Square
  7. faire un road trip sur le route 66
  8. jouer au poker à Las Vegas
  9. vivre 3 mois à l’étranger
  10. faire du shopping à Londres en 1 journée
  11. fumer un cigare à Cuba
  12. me faire tatouer lors d’un voyage
  13. traverser l’Atlantique en bateau de croisière
  14. faire le tour du monde en 10 escales
  15. piloter un avion et le faire atterrir
  16. caresser un tigre
  17. passer une nuit seul sur une île déserte
  18. faire un boat-trip dans les Caraibes en étant Capitaine

J’apprendrai :

  1. à jouer d’un instrument de musique
  2. à faire du snowboard
  3. à faire des sushis

Accomplissements personnels

  1. écrire un blog
  2. ouvrir une société
  3. gagner, épargner + 50K€ par an
  4. produire de la musique
  5. posséder mon propre labo
  6. Acheter ou construire la maison de mes rêves
  7. avoir des enfants
  8. apparaitre dans un film
  9. passer à la TV
  10. apparaître dans un clip musical
  11. atteindre mon poids de forme
  12. mixer dans plusieurs festival à l’étranger
  13. mixer en club à l’étranger (4 fois pour l’instant)
  14. entrer dans le Guiness Book des records
  15. embrasser une jolie et parfaite inconnue
  16. me faire tailler un costume sur mesure en Angleterre
  17. Passer le permis bateau
  18. Faire de mes enfants de bonnes personnes, épanouis
  19. avoir une maison au bord de la mer
  20. posséder plusieurs appartement dans le monde
  21. être plus aimant et accepter les choses telles qu’elles sont