major rework
38
config.yaml
|
@ -35,8 +35,8 @@ params:
|
|||
description: "Blog Yann Verry"
|
||||
keywords: [Blog, Yann Verry]
|
||||
author: Me
|
||||
# author: ["Me", "You"] # multiple authors
|
||||
images: ["<link or path of image for opengraph, twitter-cards>"]
|
||||
# images: ["https://20181125_092822-PANO.jpg"]
|
||||
image: "/public/cover.jpg"
|
||||
DateFormat: "2 January 2006"
|
||||
defaultTheme: auto # dark, light
|
||||
disableThemeToggle: false
|
||||
|
@ -57,32 +57,12 @@ params:
|
|||
assets:
|
||||
# disableHLJS: true # to disable highlight.js
|
||||
# disableFingerprinting: true
|
||||
favicon: "<link / abs url>"
|
||||
favicon16x16: "<link / abs url>"
|
||||
favicon32x32: "<link / abs url>"
|
||||
apple_touch_icon: "<link / abs url>"
|
||||
safari_pinned_tab: "<link / abs url>"
|
||||
|
||||
label:
|
||||
text: "Home"
|
||||
icon: https://verry.org/images/yverry.webp
|
||||
iconHeight: 35
|
||||
|
||||
# profile-mode
|
||||
profileMode:
|
||||
enabled: false # needs to be explicitly set
|
||||
title: There is no magic, only unread error messages
|
||||
subtitle: "Yann Verry"
|
||||
imageUrl: "https://verry.org/images/yverry.webp"
|
||||
imageWidth: 120
|
||||
imageHeight: 120
|
||||
imageTitle: my image
|
||||
buttons:
|
||||
- name: Posts
|
||||
url: posts
|
||||
- name: Tags
|
||||
url: tags
|
||||
|
||||
# home-info mode
|
||||
homeInfoParams:
|
||||
Title: "Hi there \U0001F44B"
|
||||
|
@ -95,11 +75,6 @@ params:
|
|||
url: "https://git.verry.org/"
|
||||
- name: rss
|
||||
|
||||
cover:
|
||||
hidden: true # hide everywhere but not in structured data
|
||||
hiddenInList: true # hide on list pages and home
|
||||
hiddenInSingle: true # hide on single page
|
||||
|
||||
editPost:
|
||||
URL: "https://git.verry.org/yann/yann.verry.org/content"
|
||||
Text: "Suggest Changes" # edit text
|
||||
|
@ -121,15 +96,6 @@ menu:
|
|||
name: Tags
|
||||
url: /tags/
|
||||
weight: 20
|
||||
# Read: https://github.com/adityatelange/hugo-PaperMod/wiki/FAQs#using-hugos-syntax-highlighter-chroma
|
||||
# pygmentsUseClasses: true
|
||||
# markup:
|
||||
# highlight:
|
||||
# # anchorLineNos: true
|
||||
# codeFences: true
|
||||
# guessSyntax: true
|
||||
# lineNos: true
|
||||
# style: monokai
|
||||
|
||||
outputs:
|
||||
home:
|
||||
|
|
|
@ -1,13 +0,0 @@
|
|||
+++
|
||||
author = "Yann Verry"
|
||||
date = 2021-03-16T22:14:59Z
|
||||
description = ""
|
||||
draft = false
|
||||
slug = "authors"
|
||||
title = "Author"
|
||||
|
||||
+++
|
||||
|
||||
|
||||
It's me!
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
+++
|
||||
author = "Yann Verry"
|
||||
date = 2021-03-16T22:14:59Z
|
||||
description = ""
|
||||
draft = false
|
||||
slug = "authors"
|
||||
title = "Author"
|
||||
|
||||
+++
|
||||
|
||||
|
||||
It's me!
|
||||
|
|
@ -1,81 +0,0 @@
|
|||
+++
|
||||
author = "Yann Verry"
|
||||
date = 2020-05-06T07:42:00Z
|
||||
description = ""
|
||||
draft = false
|
||||
slug = "disney"
|
||||
title = "Disney+ under the hood"
|
||||
|
||||
+++
|
||||
|
||||
|
||||
Le service du petit nouveau est (enfin) sorti malgré un retard à l'allumage suite à SARS-CoV-2.
|
||||
|
||||
Petite analyse du fonctionnement de disney+.
|
||||
|
||||
## Hébergement
|
||||
|
||||
|
||||
|
||||
La plateforme de disneyplus est hébergée sur AWS, en mode multi region dans au moins les régions suivantes:
|
||||
|
||||
* eu-central-1 (frankfurt)
|
||||
* us-east-1 (virginie du nord)
|
||||
* us-west-2 (Oregon)
|
||||
|
||||
Ceci est détectable via le header:
|
||||
|
||||
> x-bamtech-region
|
||||
|
||||
du host global.edge.bamgrid.com (cloudfront)
|
||||
|
||||
La géolocalisation est confiée à [onetrust](https://geolocation.onetrust.com/cookieconsentpub/v1/geo/countrycode)
|
||||
|
||||
|
||||
|
||||
Côté API, graphQL partout avec quasi que: [https://global.edge.bamgrid.com/dust](https://global.edge.bamgrid.com/dust)
|
||||
|
||||
Analytics: sanalytics.disneyplus.com (adobe omtrdc)
|
||||
|
||||
### Environnement
|
||||
|
||||
La plateforme d+ utilise plusieurs environnements:
|
||||
|
||||
* La classique dev: *.dev.dssott.com
|
||||
* de la QA *.qa.dssott.com
|
||||
* La prod caché du publique: *.prod.dssott.com utile avant le lancement de la plateforme
|
||||
|
||||
### Player
|
||||
|
||||
|
||||
|
||||
Côté player, tout les assets sont chargés depuis playback-certs.bamgrid.com qui est une distribution cloudfront backé derrière un bucket S3 hébergé en us-east-1 avec un bucket S3 répliqué ( x-amz-replication-status : COMPLETED)
|
||||
|
||||
Nous avons du M3U8 donc du HLS
|
||||
|
||||
Sur la DRM je vois du playready de microsoft
|
||||
|
||||
### CDN
|
||||
|
||||
|
||||
|
||||
J'ai pour ma part obtenu [vod-akc-eu-south-1.media.dssott.com](__GHOST_URL__/p/ef19ebf0-f22c-4e9a-b90d-2aa2936b7fd9/vod-akc-eu-south-1.media.dssott.com) qui est akamai (en ce moment)
|
||||
|
||||
La connexion entre le CDN et son origine s’effectue en HTTP
|
||||
|
||||
> CDN-Origin-Protocol: HTTP
|
||||
|
||||
Nous avons du varnish, du nginx et après la couche akamai, les fragments sont conservé en cache pendant 7jours
|
||||
|
||||
L'origine est situé à amsterdam, nginx17.vod01.hls.disney.**ams1**.prod.bamtech.co
|
||||
|
||||
Quelques certificats indique une dev qui apparaît publiquement le 16/09/2019
|
||||
|
||||
Le nom de domaine dssott.com est utilisé depuis le 18/07/2018
|
||||
|
||||
Le CSP (Customer Support Portal) est lui géré par servicenow.com
|
||||
|
||||
## Divers
|
||||
|
||||
Disney utilise les technologies de viptela (sd-wan) Vmanage NMS
|
||||
|
|
@ -1,12 +1,12 @@
|
|||
+++
|
||||
author = "Yann Verry"
|
||||
categories = ["network"]
|
||||
categories = ["dns"]
|
||||
date = 2021-04-14T13:47:47Z
|
||||
description = ""
|
||||
draft = false
|
||||
image = "__GHOST_URL__/content/images/2021/04/doh-dot-1.jpg"
|
||||
image = "doh-dot/doh-dot-1.jpg"
|
||||
slug = "resolvons-de-maniere-securise"
|
||||
tags = ["network"]
|
||||
tags = ["dns"]
|
||||
title = "Resolvons de manière sécurisé"
|
||||
|
||||
+++
|
||||
|
@ -99,7 +99,7 @@ Il est compatible nativement sur mon téléphone Android et ça c'est vraiment t
|
|||
|
||||
Paramètres -> Connexions -> Plus de paramètres de connexion :
|
||||
|
||||
{{< figure src="__GHOST_URL__/content/images/2021/04/android_dot.png" >}}
|
||||
![android DOT](android_dot.png)
|
||||
|
||||
Un peu de TCPdump m'indique que mon serveur est utilisé (en plus des metrics)
|
||||
|
||||
|
@ -126,7 +126,7 @@ doh.verry.org {
|
|||
|
||||
Et ... c'est tout côté serveur. Pour le client firefox le prend en charge, dans les paramètres chercher _DoH_ :
|
||||
|
||||
{{< figure src="__GHOST_URL__/content/images/2021/04/firefox_doh.png" >}}
|
||||
![Firefox DOH](firefox_doh.png)
|
||||
|
||||
|
||||
|
BIN
content/posts/dns/resolvons-de-maniere-securise/android_dot.png
Normal file
After Width: | Height: | Size: 116 KiB |
BIN
content/posts/dns/resolvons-de-maniere-securise/doh-dot-1.jpg
Normal file
After Width: | Height: | Size: 363 KiB |
BIN
content/posts/dns/resolvons-de-maniere-securise/firefox_doh.png
Normal file
After Width: | Height: | Size: 14 KiB |
|
@ -4,13 +4,14 @@ categories = ["dns"]
|
|||
date = 2022-01-15T23:27:45Z
|
||||
description = ""
|
||||
draft = false
|
||||
image = "__GHOST_URL__/content/images/2022/01/lie_to_me.png"
|
||||
image = "lie_to_me.png"
|
||||
slug = "rpz"
|
||||
tags = ["dns"]
|
||||
title = "DNS RPZ: Mentir proprement"
|
||||
|
||||
+++
|
||||
|
||||
![lie to me](lie_to_me.png)
|
||||
|
||||
Faire un DNS menteur ce n'est pas quelque chose de nouveau. Ça éxiste depuis très longtemps. Des épisodes très connu par la loi avec la célèbre main rouge à rendu public cette pratique. Une liste est fourni aux quatre plus gros ISP français.On entend régulièrement parler de cette mesure "de protection" à chaque mesure de blocage demandé par des majors, association, terrorisme ...
|
||||
|
BIN
content/posts/dns/rpz/lie_to_me.png
Normal file
After Width: | Height: | Size: 37 KiB |
|
@ -34,7 +34,9 @@ Bien conserver l'ipv6 du lien local de la freebox, car votre serveur passe lui e
|
|||
|
||||
Il faut comme tout routeur indiquer au kernel qu'il va router des paquets. Pour cela ajouter dans sysctl.conf la directive :
|
||||
|
||||
```net.ipv6.conf.all.forwarding=1```
|
||||
```
|
||||
net.ipv6.conf.all.forwarding=1
|
||||
```
|
||||
|
||||
Comme la doc l'indique cela supprime aussi l'acceptation des advertisements router. Ca tombe bien il faut aussi fixer de manière static votre configuration réseau. Sous debian par exemple j'ai :
|
||||
|
|
@ -29,11 +29,17 @@ Enfin on attaque les vxlan, maintenant que nous avons un vpn fonctionnel
|
|||
|
||||
serverside:
|
||||
|
||||
> ip link add vxlan101 type vxlan id 101 local 172.16.42.4 srcport 10101 10101 remote 172.16.42.1 dstport 10101ip link add link eth0 name eth0.101 type vlan id 101
|
||||
```
|
||||
ip link add vxlan101 type vxlan id 101 local 172.16.42.4 srcport 10101 10101 remote 172.16.42.1 dstport 10101
|
||||
ip link add link eth0 name eth0.101 type vlan id 101
|
||||
```
|
||||
|
||||
On ajoute dans le bridge:
|
||||
|
||||
> brctl addbr br101brctl addif br101 vxlan101 eth0.101
|
||||
```
|
||||
brctl addbr br101
|
||||
brctl addif br101 vxlan101 eth0.101
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
@ -41,11 +47,17 @@ clientside
|
|||
|
||||
|
||||
|
||||
> ip link add vxlan101 type vxlan id 101 local 172.16.42.4 srcport 10101 10101 remote 172.16.42.1 dstport 10101ip link add link eth0 name eth0.101 type vlan id 101
|
||||
```
|
||||
ip link add vxlan101 type vxlan id 101 local 172.16.42.4 srcport 10101 10101 remote 172.16.42.1 dstport 10101
|
||||
ip link add link eth0 name eth0.101 type vlan id 101
|
||||
```
|
||||
|
||||
On ajoute dans le bridge:
|
||||
|
||||
> brctl addbr br101brctl addif br101 vxlan100 eth0.101
|
||||
```
|
||||
brctl addbr br101
|
||||
brctl addif br101 vxlan100 eth0.101
|
||||
```
|
||||
|
||||
## Persistance
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
+++
|
||||
author = "Yann Verry"
|
||||
date = 2021-09-03T21:22:44Z
|
||||
description = ""
|
||||
draft = true
|
||||
slug = "gpg-avec-une-cle-moderne"
|
||||
title = "GPG avec une clé moderne"
|
||||
|
||||
+++
|
||||
|
||||
|
||||
|
||||
|
BIN
content/posts/home/stuff/20200920_122453.jpg
Normal file
After Width: | Height: | Size: 371 KiB |
|
@ -3,12 +3,13 @@ author = "Yann Verry"
|
|||
date = 2020-09-19T21:19:57Z
|
||||
description = ""
|
||||
draft = false
|
||||
image = "__GHOST_URL__/content/images/2020/09/20200920_122453.jpg"
|
||||
image = "20200920_122453.jpg"
|
||||
slug = "home-stuff"
|
||||
title = "Home stuff"
|
||||
|
||||
+++
|
||||
|
||||
![stuff](20200920_122453.jpg)
|
||||
|
||||
Inspiré de Zythom sur son [matériel](https://zythom.fr/2020/09/mon-materiel/), voici en retour le descriptif de mon chez moi.Évidemment mon travail modifie très largement ce que je possède.
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
+++
|
||||
author = "Yann Verry"
|
||||
date = 2020-10-10T13:22:38Z
|
||||
description = ""
|
||||
draft = true
|
||||
slug = "impression-3d-le-commencement"
|
||||
title = "Impression 3D, le commencement"
|
||||
|
||||
+++
|
||||
|
||||
|
||||
J'ai craqué et je suis l'heureux possesseurs d'une imprimante 3D, l'artillerie X1
|
||||
|
|
@ -4,13 +4,14 @@ categories = ["network"]
|
|||
date = 2021-04-09T22:21:19Z
|
||||
description = ""
|
||||
draft = false
|
||||
image = "__GHOST_URL__/content/images/2021/04/ink-1602896_1920.jpg"
|
||||
image = "ink-1602896_1920.jpg"
|
||||
slug = "le-monde-de-limprimante-personnel"
|
||||
tags = ["network"]
|
||||
title = "Une imprimante en 2021 c'est toujours aussi pénible"
|
||||
|
||||
+++
|
||||
|
||||
![ink](ink-1602896_1920.jpg)
|
||||
|
||||
J'ai toujours été faché avec les imprimantes. Plus jeune les drivers qui fonctionnais aléatoirement et ont toujours été obèse. Il y avait aussi l'arnaque de l'impression qui te demande de remplacer la cartouche de cyan quand tu fais une impression noir&blanc. La cartouche unique avec l'ensemble des couleurs que tu dois jeter si une seul tombe à sec (spoiler: il en restait toujours de toute façon). Tout cela avec un coût hallucinant ! Très vite j'ai joué avec du compatible, ou remplir le réservoir avec une serringue. Les fabricants eux se sont mis à faire n'importe quoi avec de la DRM sur les cartouches.
|
||||
|
After Width: | Height: | Size: 169 KiB |
|
@ -1,6 +0,0 @@
|
|||
---
|
||||
title: "My First Post"
|
||||
date: 2022-04-23T23:14:52+02:00
|
||||
draft: true
|
||||
---
|
||||
|
|
@ -4,7 +4,7 @@ date = 2021-10-09T20:47:56Z
|
|||
description = ""
|
||||
draft = false
|
||||
image = "https://images.unsplash.com/photo-1579719558505-ad4a5fee0847?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=MnwxMTc3M3wwfDF8c2VhcmNofDJ8fG1vbml0b3Jpbmd8ZW58MHx8fHwxNjMzODExOTEx&ixlib=rb-1.2.1&q=80&w=2000"
|
||||
slug = "mikrotik"
|
||||
slug = "prometheus-exporter"
|
||||
title = "MikroTik 7.1 - Prometheus exporter"
|
||||
|
||||
+++
|
||||
|
@ -16,9 +16,9 @@ Qui dit équipement réseau dit très souvent _SNMP_ mais ce n'est pas du tout m
|
|||
|
||||
Ma stack de monitoring est sous [VictoriaMetrics](https://victoriametrics.com/community.html) (prometheus compatible), il me faut donc un exporter prometheus qui .... n'éxistait pas encore !
|
||||
|
||||
J'ai donc codé un petit exporteur en python permettant de récupérer tout ce qui se passe en terme d'interface ainsi que l'utilisation CPU
|
||||
J'ai donc codé un petit exporteur en python permettant de récupérer tout ce qui se passe en terme d'interface ainsi que l'utilisation du CPU
|
||||
|
||||
url="https://git.verry.org/yann/routeros-exporter" title="routeros-exporter" description="RouterOS prometheus exporter with restapi (7.1)" icon="https://git.verry.org/assets/img/logo.svg" author="yann" publisher="gitHome" thumbnail="https://git.verry.org/user/avatar/yann/-1" caption="" >
|
||||
* https://git.verry.org/yann/routeros-exporter
|
||||
|
||||
Si il manque quelque chose les PRs sont les bienvenue !
|
||||
|
|
@ -4,7 +4,7 @@ categories = ["others"]
|
|||
date = 2018-10-20T20:32:40Z
|
||||
description = ""
|
||||
draft = false
|
||||
image = "__GHOST_URL__/content/images/2018/11/20181013_182524-EFFECTS_min.jpg"
|
||||
image = "/2018/11/20181013_182524-EFFECTS_min.jpg"
|
||||
slug = "autumn-is-her-winter-is-coming"
|
||||
tags = ["others"]
|
||||
title = "Autumn is her ! Winter is coming !"
|
||||
|
@ -14,3 +14,4 @@ title = "Autumn is her ! Winter is coming !"
|
|||
|
||||
N’oublies jamais ce que tu es, car le monde ne l’oubliera pas. Puise là ta force, ou tu t’en repentiras comme d’une faiblesse. Fais-t-en une armure, et nul ne pourra l’utiliser pour te blesser.
|
||||
|
||||
![autumn tree](/2018/11/20181013_182524-EFFECTS_min.jpg)
|
BIN
content/posts/travels/vegas/20181125_092623.jpg
Normal file
After Width: | Height: | Size: 258 KiB |
BIN
content/posts/travels/vegas/20181125_092822-PANO.jpg
Normal file
After Width: | Height: | Size: 211 KiB |
BIN
content/posts/travels/vegas/20181125_093457.jpg
Normal file
After Width: | Height: | Size: 378 KiB |
BIN
content/posts/travels/vegas/20181125_111911-EFFECTS.jpg
Normal file
After Width: | Height: | Size: 347 KiB |
BIN
content/posts/travels/vegas/20181125_112359.jpg
Normal file
After Width: | Height: | Size: 514 KiB |
BIN
content/posts/travels/vegas/20181125_120024.jpg
Normal file
After Width: | Height: | Size: 268 KiB |
BIN
content/posts/travels/vegas/20181125_120156-PANO.jpg
Normal file
After Width: | Height: | Size: 148 KiB |
BIN
content/posts/travels/vegas/20181125_120454.jpg
Normal file
After Width: | Height: | Size: 326 KiB |
BIN
content/posts/travels/vegas/20181125_123141.jpg
Normal file
After Width: | Height: | Size: 274 KiB |
BIN
content/posts/travels/vegas/20181126_154842.jpg
Normal file
After Width: | Height: | Size: 487 KiB |
|
@ -4,7 +4,7 @@ categories = ["voyage"]
|
|||
date = 2018-12-11T20:11:55Z
|
||||
description = ""
|
||||
draft = false
|
||||
image = "__GHOST_URL__/content/images/2018/12/20181125_092822-PANO.jpg"
|
||||
image = "20181125_092822-PANO.jpg"
|
||||
slug = "vegas"
|
||||
tags = ["voyage"]
|
||||
title = "Las Vegas"
|
||||
|
@ -18,17 +18,17 @@ Comme tout au US mais plus particulièrement à vegas tout est sans commune mesu
|
|||
|
||||
## Valley Of Fire
|
||||
|
||||
image valley of fire
|
||||
image gallery valley of fire
|
||||
|
||||
## Vegas
|
||||
|
||||
{{< figure src="__GHOST_URL__/content/images/2018/12/vegas_paris-1.jpg" caption="Paris à Las Vegas" >}}
|
||||
![Paris à Las Vegas](vegas_paris-1.jpg)
|
||||
|
||||
La ville, que dire tout est immense, absolument rien n'est prévu pour les piétons, ni autre chose que la voiture. C'est très choquant au début ... et puis on se souviens que nous sommes en plein désert et que les températures avoisinent les 40°C en moyenne avec des peak approchant les 50°C (oui oui).
|
||||
|
||||
Que dire, nous sommes dans un désert ? Oui et pourquoi ne pas mettre un grand lac car c'est joli ? C'est le cas avec le bellagio biensur!
|
||||
|
||||
{{< figure src="__GHOST_URL__/content/images/2018/12/20181126_154842.jpg" >}}
|
||||
![a](20181126_154842.jpg)
|
||||
|
||||
|
||||
|
BIN
content/posts/travels/vegas/vegas_paris-1.jpg
Normal file
After Width: | Height: | Size: 537 KiB |
|
@ -1,13 +0,0 @@
|
|||
+++
|
||||
author = "Yann Verry"
|
||||
date = 2020-10-10T13:39:57Z
|
||||
description = ""
|
||||
draft = true
|
||||
slug = "une-histoire-de-compression"
|
||||
title = "Une histoire de compression"
|
||||
|
||||
+++
|
||||
|
||||
|
||||
Dans le monde du web la compression gzip éxiste depuis des lustres
|
||||
|
BIN
static/2018/11/20181013_182524-EFFECTS_min.jpg
Normal file
After Width: | Height: | Size: 1.2 MiB |
BIN
static/cover.jpg
Normal file
After Width: | Height: | Size: 211 KiB |