main
iOS 3 years ago
parent aae243a515
commit 7bfd75679e

@ -12,8 +12,8 @@
"checkpointList": [
{
"path": "/",
"date": "2022-03-18",
"size": 2991953
"date": "2022-03-19",
"size": 3013227
}
],
"activityHistory": [
@ -298,7 +298,11 @@
},
{
"date": "2022-03-18",
"value": 1269
"value": 5448
},
{
"date": "2022-03-19",
"value": 21983
}
]
}

@ -1875,7 +1875,7 @@
"links": 18
},
"05.02 Networks/Configuring UFW.md": {
"size": 2946,
"size": 3518,
"tags": 2,
"links": 7
},
@ -1887,27 +1887,27 @@
"05.02 Networks/Server Cloud.md": {
"size": 8351,
"tags": 5,
"links": 11
"links": 12
},
"05.02 Networks/Server Alias.md": {
"size": 5882,
"tags": 6,
"links": 9
"links": 10
},
"05.02 Networks/Server Tools.md": {
"size": 10003,
"tags": 6,
"links": 13
"links": 14
},
"05.02 Networks/Server VPN.md": {
"size": 4443,
"size": 5053,
"tags": 4,
"links": 9
"links": 10
},
"05.02 Networks/Configuring Caddy.md": {
"size": 6003,
"size": 6932,
"tags": 3,
"links": 3
"links": 4
},
"05.02 Networks/mfxm Website Scope.md": {
"size": 2938,
@ -2936,7 +2936,7 @@
},
"05.02 Networks/Configuring Telegram bots.md": {
"size": 2929,
"tags": 0,
"tags": 4,
"links": 9
},
"05.02 Networks/GitHub - fxkjdlogwatch-telegram-bot Send logwatch results to your telegram account.md": {
@ -3255,22 +3255,37 @@
"links": 8
},
"00.01 Admin/Memos/2022-03-18.md": {
"size": 1069,
"size": 2024,
"tags": 0,
"links": 6
"links": 11
},
"00.01 Admin/Memos/2022-03-19.md": {
"size": 959,
"tags": 0,
"links": 4
},
"05.02 Networks/Configuring Prometheus.md": {
"size": 6976,
"tags": 3,
"links": 3
},
"00.03 News/Ego is the Enemy The Legend of Genghis Khan - Farnam Street.md": {
"size": 9560,
"tags": 3,
"links": 1
}
},
"commitTypes": {
"/": {
"Refactor": 340,
"Create": 292,
"Link": 547,
"Expand": 261
"Refactor": 346,
"Create": 296,
"Link": 563,
"Expand": 274
}
},
"dailyCommits": {
"/": {
"0": 47,
"0": 48,
"1": 17,
"2": 1,
"3": 0,
@ -3278,22 +3293,22 @@
"5": 3,
"6": 14,
"7": 103,
"8": 135,
"9": 119,
"10": 79,
"11": 58,
"12": 71,
"13": 156,
"8": 137,
"9": 124,
"10": 80,
"11": 62,
"12": 82,
"13": 163,
"14": 59,
"15": 61,
"16": 33,
"16": 34,
"17": 69,
"18": 100,
"19": 44,
"19": 47,
"20": 87,
"21": 45,
"22": 117,
"23": 20
"23": 24
}
},
"weeklyCommits": {
@ -3302,14 +3317,27 @@
"Tue": 89,
"Wed": 153,
"Thu": 165,
"Fri": 129,
"Fri": 145,
"Sat": 0,
"Sun": 668
"Sun": 691
}
},
"recentCommits": {
"/": {
"Expanded": [
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Prometheus.md\"> Configuring Prometheus </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Prometheus.md\"> Configuring Prometheus </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Prometheus.md\"> Configuring Prometheus </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Prometheus.md\"> Configuring Prometheus </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Prometheus.md\"> Configuring Prometheus </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-19.md\"> 2022-03-19 </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Server VPN.md\"> Server VPN </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Caddy.md\"> Configuring Caddy </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-18.md\"> 2022-03-18 </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-18.md\"> 2022-03-18 </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-18.md\"> 2022-03-18 </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring UFW.md\"> Configuring UFW </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-18.md\"> 2022-03-18 </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-18.md\"> 2022-03-18 </a>",
"<a class=\"internal-link\" href=\"Test task.md\"> Test task </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Fail2ban.md\"> Configuring Fail2ban </a>",
@ -3347,22 +3375,13 @@
"<a class=\"internal-link\" href=\"00.02 Inbox/GitHub - deividgdtfail2ban_telegram_notifications Sending fail2ban notifications using a Telegram bot.md\"> GitHub - deividgdtfail2ban_telegram_notifications Sending fail2ban notifications using a Telegram bot </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Telegram bots.md\"> Configuring Telegram bots </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Calendars/2022-03-15 Kids for Cash.md\"> 2022-03-15 Kids for Cash </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-13.md\"> 2022-03-13 </a>",
"<a class=\"internal-link\" href=\"01.02 Home/Fashion.md\"> Fashion </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-02.md\"> 2022-03-02 </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-12.md\"> 2022-03-12 </a>",
"<a class=\"internal-link\" href=\"00.04 IT/Obsidian website publish - comments.md\"> Obsidian website publish - comments </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-11.md\"> 2022-03-11 </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Telegram bots.md\"> Configuring Telegram bots </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/GitHub - matriphemonit2telegram A simple script to send Monit alerts using Telegram bot..md\"> GitHub - matriphemonit2telegram A simple script to send Monit alerts using Telegram bot. </a>",
"<a class=\"internal-link\" href=\"ReadItLater Inbox/GitHub - fxkjdlogwatch-telegram-bot Send logwatch results to your telegram account.md\"> GitHub - fxkjdlogwatch-telegram-bot Send logwatch results to your telegram account </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Telegram bots.md\"> Configuring Telegram bots </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Telegram bots.md\"> Configuring Telegram bots </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Telegram bots.md\"> Configuring Telegram bots </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Telegram bots.md\"> Configuring Telegram bots </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-10.md\"> 2022-03-10 </a>"
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-13.md\"> 2022-03-13 </a>"
],
"Created": [
"<a class=\"internal-link\" href=\"00.02 Inbox/How to Install Prometheus on Ubuntu 20.04.md\"> How to Install Prometheus on Ubuntu 20.04 </a>",
"<a class=\"internal-link\" href=\"Untitled.md\"> Untitled </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-19.md\"> 2022-03-19 </a>",
"<a class=\"internal-link\" href=\"00.02 Inbox/Ego is the Enemy The Legend of Genghis Khan - Farnam Street.md\"> Ego is the Enemy The Legend of Genghis Khan - Farnam Street </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-18.md\"> 2022-03-18 </a>",
"<a class=\"internal-link\" href=\"Untitled.md\"> Untitled </a>",
"<a class=\"internal-link\" href=\"Untitled.md\"> Untitled </a>",
@ -3409,13 +3428,11 @@
"<a class=\"internal-link\" href=\"06.02 Investments/@Investment Task master.md\"> @Investment Task master </a>",
"<a class=\"internal-link\" href=\"06.02 Investments/VC Tasks.md\"> VC Tasks </a>",
"<a class=\"internal-link\" href=\"06.02 Investments/QED Naval.md\"> QED Naval </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-14.md\"> 2022-03-14 </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Calendars/(Every M) Test event).md\"> (Every M) Test event) </a>",
"<a class=\"internal-link\" href=\"01.01 Life Orga/Markdown.md\"> Markdown </a>",
"<a class=\"internal-link\" href=\"@Life Admin.md\"> @Life Admin </a>",
"<a class=\"internal-link\" href=\"00.02 Inbox/Fresh Tomato Eggs in Purgatory with Chickpeas.md\"> Fresh Tomato Eggs in Purgatory with Chickpeas </a>"
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-14.md\"> 2022-03-14 </a>"
],
"Renamed": [
"<a class=\"internal-link\" href=\"00.03 News/Ego is the Enemy The Legend of Genghis Khan - Farnam Street.md\"> Ego is the Enemy The Legend of Genghis Khan - Farnam Street </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Prometheus.md\"> Configuring Prometheus </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Calendars/2022-06-30 Test task.md\"> 2022-06-30 Test task </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Fail2ban.md\"> Configuring Fail2ban </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/InstallEnable Secure NGINX with Custom Fail2ban Filters - LinuxCapable.md\"> InstallEnable Secure NGINX with Custom Fail2ban Filters - LinuxCapable </a>",
@ -3464,11 +3481,12 @@
"<a class=\"internal-link\" href=\"00.03 News/The man who paid for Anerica's fear.md\"> The man who paid for Anerica's fear </a>",
"<a class=\"internal-link\" href=\"03.03 Food & Wine/Banana Foster.md\"> Banana Foster </a>",
"<a class=\"internal-link\" href=\"00.03 News/What i learnt during my 3 days offline.md\"> What i learnt during my 3 days offline </a>",
"<a class=\"internal-link\" href=\"00.04 IT/How to migrate your Nextcloud database-backend from MySQLMariaDB to PostgreSQL.md\"> How to migrate your Nextcloud database-backend from MySQLMariaDB to PostgreSQL </a>",
"<a class=\"internal-link\" href=\"00.06 Professional/The 10 Keys to A Successful Board Meeting How to Make Them Great and Not Something Everyone Dreads from Ajay Agarwal, Bain Capital Partners SaaStr.md\"> The 10 Keys to A Successful Board Meeting How to Make Them Great and Not Something Everyone Dreads from Ajay Agarwal, Bain Capital Partners SaaStr </a>",
"<a class=\"internal-link\" href=\"03.03 Food & Wine/Mushroom risotto.md\"> Mushroom risotto </a>"
"<a class=\"internal-link\" href=\"00.04 IT/How to migrate your Nextcloud database-backend from MySQLMariaDB to PostgreSQL.md\"> How to migrate your Nextcloud database-backend from MySQLMariaDB to PostgreSQL </a>"
],
"Tagged": [
"<a class=\"internal-link\" href=\"00.03 News/Ego is the Enemy The Legend of Genghis Khan - Farnam Street.md\"> Ego is the Enemy The Legend of Genghis Khan - Farnam Street </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Telegram bots.md\"> Configuring Telegram bots </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Prometheus.md\"> Configuring Prometheus </a>",
"<a class=\"internal-link\" href=\"Test task.md\"> Test task </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Fail2ban.md\"> Configuring Fail2ban </a>",
"<a class=\"internal-link\" href=\"00.03 News/Whats in a Black name 400 years of context..md\"> Whats in a Black name 400 years of context. </a>",
@ -3516,10 +3534,7 @@
"<a class=\"internal-link\" href=\"Slow sex, long life.md\"> Slow sex, long life </a>",
"<a class=\"internal-link\" href=\"Uyghur Exile.md\"> Uyghur Exile </a>",
"<a class=\"internal-link\" href=\"00.03 News/The improbable endless heroism of Volodymyr Zelensky.md\"> The improbable endless heroism of Volodymyr Zelensky </a>",
"<a class=\"internal-link\" href=\"00.03 News/The man who paid for Anerica's fear.md\"> The man who paid for Anerica's fear </a>",
"<a class=\"internal-link\" href=\"Banana Foster.md\"> Banana Foster </a>",
"<a class=\"internal-link\" href=\"Untitled.md\"> Untitled </a>",
"<a class=\"internal-link\" href=\"00.02 Inbox/Mushroom risotto.md\"> Mushroom risotto </a>"
"<a class=\"internal-link\" href=\"00.03 News/The man who paid for Anerica's fear.md\"> The man who paid for Anerica's fear </a>"
],
"Refactored": [
"<a class=\"internal-link\" href=\"01.02 Home/@Main Dashboard.md\"> @Main Dashboard </a>",
@ -3545,9 +3560,12 @@
"<a class=\"internal-link\" href=\"00.02 Inbox/Fresh Tomato Eggs in Purgatory with Chickpeas.md\"> Fresh Tomato Eggs in Purgatory with Chickpeas </a>",
"<a class=\"internal-link\" href=\"03.03 Food & Wine/Fresh Tomato Eggs in Purgatory with Chickpeas.md\"> Fresh Tomato Eggs in Purgatory with Chickpeas </a>",
"<a class=\"internal-link\" href=\"04.04 Blog/DG - News Page.md\"> DG - News Page </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Telegram bots.md\"> Configuring Telegram bots </a>"
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Telegram bots.md\"> Configuring Telegram bots </a>",
"<a class=\"internal-link\" href=\"00.02 Inbox/How to Install Prometheus on Ubuntu 20.04.md\"> How to Install Prometheus on Ubuntu 20.04 </a>",
"<a class=\"internal-link\" href=\"00.02 Inbox/How to Install Prometheus on Ubuntu 20.04.md\"> How to Install Prometheus on Ubuntu 20.04 </a>"
],
"Deleted": [
"<a class=\"internal-link\" href=\"00.02 Inbox/How to Install Prometheus on Ubuntu 20.04.md\"> How to Install Prometheus on Ubuntu 20.04 </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Calendars/2022-06-30 Test task.md\"> 2022-06-30 Test task </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/InstallEnable Secure NGINX with Custom Fail2ban Filters - LinuxCapable.md\"> InstallEnable Secure NGINX with Custom Fail2ban Filters - LinuxCapable </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/How To Protect an Apache Server with Fail2Ban on Ubuntu 20.04.md\"> How To Protect an Apache Server with Fail2Ban on Ubuntu 20.04 </a>",
@ -3597,10 +3615,22 @@
"<a class=\"internal-link\" href=\"https/t.me/mbvservers_bot.md\"> mbvservers_bot </a>",
"<a class=\"internal-link\" href=\"Docker config.md\"> Docker config </a>",
"<a class=\"internal-link\" href=\"01.01 Life Orga/@Life Admin.md\"> @Life Admin </a>",
"<a class=\"internal-link\" href=\"00.02 Inbox/Three Bodies in Texas - Believer Magazine.md\"> Three Bodies in Texas - Believer Magazine </a>",
"<a class=\"internal-link\" href=\"00.02 Inbox/Im the Operator The Aftermath of a Self-Driving Tragedy.md\"> Im the Operator The Aftermath of a Self-Driving Tragedy </a>"
"<a class=\"internal-link\" href=\"00.02 Inbox/Three Bodies in Texas - Believer Magazine.md\"> Three Bodies in Texas - Believer Magazine </a>"
],
"Linked": [
"<a class=\"internal-link\" href=\"00.02 Inbox/How to Install Prometheus on Ubuntu 20.04.md\"> How to Install Prometheus on Ubuntu 20.04 </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Prometheus.md\"> Configuring Prometheus </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-19.md\"> 2022-03-19 </a>",
"<a class=\"internal-link\" href=\"00.02 Inbox/Ego is the Enemy The Legend of Genghis Khan - Farnam Street.md\"> Ego is the Enemy The Legend of Genghis Khan - Farnam Street </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Server Alias.md\"> Server Alias </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Server Cloud.md\"> Server Cloud </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Server Tools.md\"> Server Tools </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Server VPN.md\"> Server VPN </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Caddy.md\"> Configuring Caddy </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-18.md\"> 2022-03-18 </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-18.md\"> 2022-03-18 </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-18.md\"> 2022-03-18 </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-18.md\"> 2022-03-18 </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-02-20.md\"> 2022-02-20 </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-18.md\"> 2022-03-18 </a>",
"<a class=\"internal-link\" href=\"05.02 Networks/Configuring Fail2ban.md\"> Configuring Fail2ban </a>",
@ -3638,20 +3668,7 @@
"<a class=\"internal-link\" href=\"00.03 News/Putins New Iron Curtain.md\"> Putins New Iron Curtain </a>",
"<a class=\"internal-link\" href=\"00.03 News/Vladimir Putins Revisionist History of Russia and Ukraine.md\"> Vladimir Putins Revisionist History of Russia and Ukraine </a>",
"<a class=\"internal-link\" href=\"00.03 News/Will the Bush Dynasty Die With George P. Bush.md\"> Will the Bush Dynasty Die With George P. Bush </a>",
"<a class=\"internal-link\" href=\"00.03 News/The Great Resignation has morphed into the Great Sabbatical.md\"> The Great Resignation has morphed into the Great Sabbatical </a>",
"<a class=\"internal-link\" href=\"00.03 News/Why Epicureanism, not Stoicism, is the philosophy we need now.md\"> Why Epicureanism, not Stoicism, is the philosophy we need now </a>",
"<a class=\"internal-link\" href=\"00.03 News/Opinion The Russia Sanctions That Could Actually Stop Putin.md\"> Opinion The Russia Sanctions That Could Actually Stop Putin </a>",
"<a class=\"internal-link\" href=\"00.03 News/Why Indian universities are ditching English-only education.md\"> Why Indian universities are ditching English-only education </a>",
"<a class=\"internal-link\" href=\"00.03 News/Society has a trust problem. More censorship will only make it worse..md\"> Society has a trust problem. More censorship will only make it worse. </a>",
"<a class=\"internal-link\" href=\"00.03 News/Notes apps are where ideas go to die. And thats good..md\"> Notes apps are where ideas go to die. And thats good. </a>",
"<a class=\"internal-link\" href=\"00.03 News/Imagine Scythias fierce warrior women, the real Amazons Aeon Essays.md\"> Imagine Scythias fierce warrior women, the real Amazons Aeon Essays </a>",
"<a class=\"internal-link\" href=\"00.03 News/Lenquête « Suisse Secrets » relance le débat sur la liberté de la presse face au secret bancaire.md\"> Lenquête « Suisse Secrets » relance le débat sur la liberté de la presse face au secret bancaire </a>",
"<a class=\"internal-link\" href=\"00.03 News/Jackass Oral Hostory.md\"> Jackass Oral Hostory </a>",
"<a class=\"internal-link\" href=\"00.03 News/In Kashmir, indigenous Muslim healers cure broken bones with spirituality — and science.md\"> In Kashmir, indigenous Muslim healers cure broken bones with spirituality — and science </a>",
"<a class=\"internal-link\" href=\"00.03 News/How the enigmatic Nefertiti came to be locked away in Germany Aeon Essays.md\"> How the enigmatic Nefertiti came to be locked away in Germany Aeon Essays </a>",
"<a class=\"internal-link\" href=\"00.03 News/Google Search Is Dying.md\"> Google Search Is Dying </a>",
"<a class=\"internal-link\" href=\"00.03 News/He spent 25 years infiltrating the Klan.md\"> He spent 25 years infiltrating the Klan </a>",
"<a class=\"internal-link\" href=\"00.03 News/Javanka in Exile.md\"> Javanka in Exile </a>"
"<a class=\"internal-link\" href=\"00.03 News/The Great Resignation has morphed into the Great Sabbatical.md\"> The Great Resignation has morphed into the Great Sabbatical </a>"
],
"Removed Tags from": [
"<a class=\"internal-link\" href=\"06.02 Investments/Le Miel de Paris.md\"> Le Miel de Paris </a>",
@ -3674,7 +3691,8 @@
"<a class=\"internal-link\" href=\"00.04 IT/ntfy.sh - email to message.md\"> ntfy.sh - email to message </a>",
"<a class=\"internal-link\" href=\"00.02 Inbox/Fresh Tomato Eggs in Purgatory with Chickpeas.md\"> Fresh Tomato Eggs in Purgatory with Chickpeas </a>",
"<a class=\"internal-link\" href=\"04.04 Blog/Cover Page.md\"> Cover Page </a>",
"<a class=\"internal-link\" href=\"04.04 Blog/Landing Page.md\"> Landing Page </a>"
"<a class=\"internal-link\" href=\"04.04 Blog/Landing Page.md\"> Landing Page </a>",
"<a class=\"internal-link\" href=\"00.01 Admin/Memos/2022-03-18.md\"> 2022-03-18 </a>"
]
}
},

@ -4,6 +4,31 @@
"type": "local",
"color": "#4d95f7",
"directory": "00.01 Admin/Calendars"
},
{
"type": "gcal",
"color": "#0056d6",
"url": "melchiorbv@gmail.com"
},
{
"type": "gcal",
"color": "#ffc777",
"url": "en-gb.ch#holiday@group.v.calendar.google.com"
},
{
"type": "gcal",
"color": "#fff76b",
"url": "en-gb.french#holiday@group.v.calendar.google.com"
},
{
"type": "gcal",
"color": "#e4ef65",
"url": "en.uk#holiday@group.v.calendar.google.com"
},
{
"type": "ical",
"color": "#52d6fc",
"url": "webcal://p55-caldav.icloud.com/published/2/MTc2MDQ3Mzc5MzQxNzYwNEi4Z5y74HWKzCeCFpoAsLkAo0RZ--Np5MpfvpB8PSbwberx4QERWgCnZ3nPIMqxgArJ0qcm9iNJ1gF8UAcL838"
}
],
"defaultCalendar": 0,

@ -46,6 +46,11 @@
}
],
"05.02 Networks/Server Cloud.md": [
{
"title": "[[Selfhosting]], [[Server Cloud|Cloud]]: Upgrader & Health checks",
"time": "2022-05-01",
"rowNumber": 436
},
{
"title": "[[Server Cloud]]: Backup server",
"time": "2022-09-06",
@ -53,17 +58,37 @@
}
],
"05.02 Networks/Server Alias.md": [
{
"title": "[[Selfhosting]], [[Server Alias|Email Alias]]: Upgrader & Health checks",
"time": "2022-03-31",
"rowNumber": 304
},
{
"title": "[[Server Alias]]: Backup server",
"time": "2022-09-06",
"rowNumber": 304
"rowNumber": 306
}
],
"05.02 Networks/Server Tools.md": [
{
"title": "[[Server Tools]]: Backup server",
"time": "2022-04-05",
"rowNumber": 560
"rowNumber": 566
},
{
"title": "[[Selfhosting]], [[Server Tools|Tools]]: Upgrader Bitwarden & Health checks",
"time": "2022-04-18",
"rowNumber": 573
},
{
"title": "[[Selfhosting]], [[Server Tools|Tools]]: Upgrader Standard Notes & Health checks",
"time": "2022-05-18",
"rowNumber": 575
},
{
"title": "[[Selfhosting]], [[Server Tools|Tools]]: Upgrader Gitea & Health checks",
"time": "2022-06-18",
"rowNumber": 571
}
],
"05.02 Networks/Server VPN.md": [
@ -71,6 +96,11 @@
"title": "[[Server VPN]]: Backup server",
"time": "2022-04-05",
"rowNumber": 283
},
{
"title": "[[Selfhosting]], [[Server VPN|VPN]]: Check VPN state & dashboard",
"time": "2022-06-18",
"rowNumber": 287
}
],
"04.01 lebv.org/Hosting Tasks.md": [
@ -456,41 +486,66 @@
"06.02 Investments/VC Tasks.md": [
{
"title": "[[VC Tasks#internet alerts|monitor VC news and publications]]",
"time": "2022-03-18",
"time": "2022-03-25",
"rowNumber": 74
}
],
"06.02 Investments/Crypto Tasks.md": [
{
"title": "[[Crypto Tasks#internet alerts|monitor Crypto news and publications]]",
"time": "2022-03-18",
"time": "2022-03-25",
"rowNumber": 74
}
],
"06.02 Investments/Equity Tasks.md": [
{
"title": "[[Equity Tasks#internet alerts|monitor Equity news and publications]]",
"time": "2022-03-18",
"time": "2022-03-25",
"rowNumber": 74
}
],
"05.02 Networks/Configuring UFW.md": [
{
"title": "[[Selfhosting]], [[Configuring UFW|Firewall]] Get IP addresses caught by Postfix",
"time": "2022-03-19",
"time": "2022-03-26",
"rowNumber": 239
},
{
"title": "[[Selfhosting]], [[Configuring UFW|Firewall]]: Update the Blocked IP list",
"time": "2022-03-19",
"rowNumber": 240
"time": "2022-03-26",
"rowNumber": 241
}
],
"00.01 Admin/Memos/2022-03-18.md": [
{
"title": "07:35 [[Selfhosting]], [[Configuring Fail2ban]]: look at the filter for the Postfix jail",
"time": "2022-03-19",
"rowNumber": 88
"title": "11:34 [[Selfhosting]], [[Configuring Fail2ban|Fail2ban]], [[Configuring UFW|UFW]]: voir si la liste d'IP peut etre partagee avec [crowdsec](https://crowdsec.net)",
"time": "2022-04-30",
"rowNumber": 90
},
{
"title": "11:36 [[@IT & Computer]]: Find a HackerNews reader",
"time": "2022-03-31",
"rowNumber": 91
},
{
"title": "11:39 [[Selfhosting]], [[@News]], [[Server Tools|Tools]]: explore self hosting a RSS reader like [selfoss](https://selfoss.aditu.de)",
"time": "2022-03-31",
"rowNumber": 92
},
{
"title": "11:41 [[Selfhosting]], [[Server Tools|Tools]]: explore self hosting a web automation tool like [huginn](https://github.com/huginn/huginn)",
"time": "2022-04-10",
"rowNumber": 93
},
{
"title": "15:39 [[Selfhosting]], [[Configuring Caddy|caddy]]: Mettre en place le monitoring par Prometheus",
"time": "2022-04-03",
"rowNumber": 95
},
{
"title": "22:33 [[Selfhosting]], [[Server Tools|Tools]]: install SN extensions",
"time": "2022-04-03",
"rowNumber": 96
}
]
},

@ -4,12 +4,12 @@
"type": "split",
"children": [
{
"id": "3fc6e2a459514956",
"id": "61a3cfda3a0ace51",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "01.02 Home/@Main Dashboard.md",
"file": "00.01 Admin/Memos/2022-03-18.md",
"mode": "preview",
"source": false
}
@ -77,7 +77,7 @@
"state": {
"type": "backlink",
"state": {
"file": "01.02 Home/@Main Dashboard.md",
"file": "00.01 Admin/Memos/2022-03-18.md",
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
@ -94,7 +94,7 @@
"state": {
"type": "outgoing-link",
"state": {
"file": "01.02 Home/@Main Dashboard.md",
"file": "00.01 Admin/Memos/2022-03-18.md",
"linksCollapsed": false,
"unlinkedCollapsed": false
}
@ -143,17 +143,17 @@
],
"currentTab": 2
},
"active": "3fc6e2a459514956",
"active": "61a3cfda3a0ace51",
"lastOpenFiles": [
"01.02 Home/@Main Dashboard.md",
"00.01 Admin/Memos/2022-03-17.md",
"00.01 Admin/Memos/2022-03-16.md",
"00.01 Admin/Memos/2022-03-18.md",
"05.02 Networks/Configuring Fail2ban.md",
"00.01 Admin/Memos/2022-03-19.md",
"01.02 Home/@Main Dashboard.md",
"05.02 Networks/Configuring Prometheus.md",
"05.02 Networks/Server Tools.md",
"05.02 Networks/Configuring Monit.md",
"05.02 Networks/Configuring Postfix.md",
"00.03 News/Ego is the Enemy The Legend of Genghis Khan - Farnam Street.md",
"00.02 Inbox/How to Install Prometheus on Ubuntu 20.04.md",
"05.02 Networks/Configuring Telegram bots.md",
"05.02 Networks/Configuring UFW.md",
"00.01 Admin/Calendars/2022-03-26 Fiancailles Eloi.md"
"05.02 Networks/Configuring Fail2ban.md"
]
}

@ -13,9 +13,9 @@ Stress: 40
FrontHeadBar: 5
EarHeadBar: 45
BackHeadBar: 35
Water:
Coffee:
Steps:
Water: 3
Coffee: 3
Steps: 5470
Ski:
Riding:
Racket:
@ -86,7 +86,15 @@ This section does serve for quick memos.
%% ### %%
&emsp;
- [ ] 07:35 [[Selfhosting]], [[Configuring Fail2ban]]: look at the filter for the Postfix jail 📆2022-03-19
- [x] 07:35 [[Selfhosting]], [[Configuring Fail2ban]]: look at the filter for the Postfix jail 📅 2022-03-19 ✅ 2022-03-18
- [x] 09:11 [[Selfhosting]], [[Configuring Caddy]]: debug the log file 📅 2022-03-25 ✅ 2022-03-18
- [ ] 11:34 [[Selfhosting]], [[Configuring Fail2ban|Fail2ban]], [[Configuring UFW|UFW]]: voir si la liste d'IP peut etre partagee avec [crowdsec](https://crowdsec.net) 📆2022-04-30
- [ ] 11:36 [[@IT & Computer]]: Find a HackerNews reader 📆2022-03-31
- [ ] 11:39 [[Selfhosting]], [[@News]], [[Server Tools|Tools]]: explore self hosting a RSS reader like [selfoss](https://selfoss.aditu.de) 📆2022-03-31
- [ ] 11:41 [[Selfhosting]], [[Server Tools|Tools]]: explore self hosting a web automation tool like [huginn](https://github.com/huginn/huginn) 📆2022-04-10
- [x] 12:23 [[Selfhosting]], [[Server Tools|Tools]], [[Configuring Caddy|caddy]]: Add Caddy to Prometheus 📅 2022-03-26 ✅ 2022-03-18
- [ ] 15:39 [[Selfhosting]], [[Configuring Caddy|caddy]]: Mettre en place le monitoring par Prometheus 📆2022-04-03
- [ ] 22:33 [[Selfhosting]], [[Server Tools|Tools]]: install SN extensions 📆2022-04-03
---

@ -0,0 +1,101 @@
---
Date: 2022-03-19
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: Yes
Sleep: 8
Happiness: 90
Gratefulness: 85
Stress: 40
FrontHeadBar: 5
EarHeadBar: 45
BackHeadBar: 35
Water: 0.25
Coffee: 1
Steps:
Ski:
Riding:
Racket:
Football:
---
%% Parent:: [[@Life Admin]] %%
---
[[2022-03-18|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2022-03-20|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2022-03-19Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2022-03-19NSave
&emsp;
# 2022-03-19
&emsp;
```ad-abstract
title: Summary
collapse: open
Note Description
```
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### Memos
&emsp;
#### Memos
This section does serve for quick memos.
&emsp;
%% ### %%
&emsp;
---
&emsp;
### Notes
&emsp;
Loret ipsum
&emsp;
&emsp;

@ -0,0 +1,79 @@
---
dg-publish: true
Alias: [""]
Tag: ["History", "Leadership", "Legacy"]
Date: 2022-03-19
DocType: "WebClipping"
Hierarchy:
TimeStamp: 2022-03-19
Link: https://fs.blog/ego-is-the-enemy-genghis-khan/
location:
CollapseMetaTable: Yes
---
Parent:: [[@News|News]]
Read:: No
---
&emsp;
```button
name Save
type command
action Save current file
id Save
```
^button-EgotheEnemyTheLegendofGenghisKhanNSave
&emsp;
# Ego is the Enemy: The Legend of Genghis Khan - Farnam Street
**In his book, [Ego is the Enemy](https://www.amazon.com/gp/product/1591847818/ref=as_li_qf_asin_il_tl?ie=UTF8&tag=farnamstreet-20&creative=9325&linkCode=as2&creativeASIN=1591847818&linkId=ea6830b2cd6dce2e3b20e3f5becde10b), Ryan Holiday tells the story of Genghis Khan and how his openness to learning was the foundation of his success.**
The legend of Genghis Khan has echoed through history: A barbarian conqueror, fueled by bloodlust, terrorizing the civilized world. We have him and his Mongol horde traveling across Asia and Europe, insatiable, stopping at nothing to plunder, rape, and kill not just the people who stood in their way, but the cultures they had built. Then, not unlike his nomadic band of warriors, this terrible cloud simply disappeared from history, because the Mongols built nothing that could last. Like all reactionary, emotional assessments, this could not be more wrong. For not only was Genghis Khan one of the greatest military minds who ever lived, he was a perpetual student, whose stunning victories were often the result of his ability to absorb the best technologies, practices, and innovations of each new culture his empire touched. In fact, if there is one theme in his reign and in the several centuries of dynastic rule that followed, its this: appropriation.
Under Genghis Khans direction, the Mongols were as ruthless about stealing and absorbing the best of each culture they encountered as they were about conquest itself. Though there were essentially no technological inventions, no beautiful buildings or even great Mongol art, with each battle and enemy, their culture learned and absorbed something new. Genghis Khan was not born a genius. Instead, as one biographer put it, his was “a persistent cycle of pragmatic learning, experimental adaptation, and constant revision driven by his uniquely disciplined and focused will.”
He was the greatest conqueror the world ever knew because he was more open to learning than any other conqueror has ever been.
Khans first powerful victories came from the reorganization of his military units, splitting his soldiers into groups of ten. This he stole from neighboring Turkic tribes, and unknowingly converted the Mongols to the decimal system. Soon enough, their expanding empire brought them into contact with another “technology” theyd never experienced before: walled cities. In the Tangut raids, Khan first learned the ins and outs of war against fortified cities and the strategies critical to laying siege, and quickly became an expert. Later, with help from Chinese engineers, he taught his soldiers how to build siege machines that could knock down city walls. In his campaigns against the Jurched, Khan learned the importance of winning hearts and minds. By working with the scholars and royal family of the lands he conquered, Khan was able to hold on to and manage these territories in ways that most empires could not. Afterward, in every country or city he held, Khan would call for the smartest astrologers, scribes, doctors, thinkers, and advisers—anyone who could aid his troops and their efforts. His troops traveled with interrogators and translators for precisely this purpose.
It was a habit that would survive his death. While the Mongols themselves seemed dedicated almost solely to the art of war, they put to good use every craftsman, merchant, scholar, entertainer, cook, and skilled worker they came in contact with. The Mongol Empire was remarkable for its religious freedoms, and most of all, for its love of ideas and convergence of cultures. It brought lemons to China for the first time, and Chinese noodles to the West. It spread Persian carpets, German mining technology, French metalworking, and Islam. The cannon, which revolutionized warfare, was said to be the resulting fusion of Chinese gunpowder, Muslim flamethrowers, and European metalwork. It was Mongol openness to learning and new ideas that brought them together.
As we first succeed, we will find ourselves in new situations, facing new problems. The freshly promoted soldier must learn the art of politics. The salesman, how to manage. The founder, how to delegate. The writer, how to edit others. The comedian, how to act. The chef turned restaurateur, how to run the other side of the house.
This is not a harmless conceit. The physicist John Wheeler, who helped develop the hydrogen bomb, once observed that “as our island of knowledge grows, so does the shore of our ignorance.” In other words, each victory and advancement that made Khan smarter also bumped him against new situations hed never encountered before. It takes a special kind of humility to grasp that you know less, even as you know and grasp more and more. Its remembering Socrates wisdom lay in the fact that he knew that he knew next to nothing.
With accomplishment comes a growing pressure to pretend that we know more than we do. To pretend we already know everything. Scientia infla (knowledge puffs up). Thats the worry and the risk—thinking that were set and secure, when in reality understanding and mastery is a fluid, continual process.
The nine-time Grammy and Pulitzer Prizewinning jazz musician Wynton Marsalis once advised a promising young musician on the mind-set required in the lifelong study of music: “Humility engenders learning because it beats back the arrogance that puts blinders on. It leaves you open for truths to reveal themselves. You dont stand in your own way. . . . Do you know how you can tell when someone is truly humble? I believe theres one simple test: because they consistently observe and listen, the humble improve. They dont assume, I know the way.’”
No matter what youve done up to this point, you better still be a student. If youre not still learning, youre already dying.
It is not enough only to be a student at the beginning. It is a position that one has to assume for life. Learn from everyone and everything. From the people you beat, and the people who beat you, from the people you dislike, even from your supposed enemies. At every step and every juncture in life, there is the opportunity to learn—and even if the lesson is purely remedial, we must not let ego block us from hearing it again.
Too often, convinced of our own intelligence, we stay in a comfort zone that ensures that we never feel stupid (and are never challenged to learn or reconsider what we know). It obscures from view various weaknesses in our understanding, until eventually its too late to change course. This is where the silent toll is taken.
Each of us faces a threat as we pursue our craft. Like sirens on the rocks, ego sings a soothing, validating song— which can lead to a wreck. The second we let the ego tell us  we have graduated, learning grinds to a halt. Thats why Frank Shamrock said, “Always stay a student.” As in, it never ends.
The solution is as straightforward as it is initially uncomfortable: Pick up a book on a topic you know next to nothing about. Put yourself in rooms where youre the least knowledgeable person. That uncomfortable feeling, that defensiveness that you feel when your most deeply held assumptions are challenged—what about subjecting yourself to it deliberately? Change your mind. Change your surroundings
An amateur is defensive. The professional finds learning (and even, occasionally, being shown up) to be enjoyable; they like being challenged and humbled, and engage in education as an ongoing and endless process.
Most military cultures—and people in general—seek to impose values and control over what they encounter. What made the Mongols different was their ability to weigh each situation objectively, and if need be, swap out previous practices for new ones. All great businesses start this way, but then something happens. Take the theory of disruption, which posits that at some point in time, every industry will be disrupted by some trend or innovation that, despite all the resources in the world, the incumbent interests will be incapable of responding to. Why is this? Why cant businesses change and adapt?
A large part of it is because they lost the ability to learn. They stopped being students. The second this happens to you, your knowledge becomes fragile.
The great manager and business thinker Peter Drucker says that its not enough simply to want to learn. As people progress, they must also understand how they learn and then set up processes to facilitate this continual education. Otherwise, we are dooming ourselves to a sort of self-imposed ignorance.
Source: [Ego is the Enemy](https://www.amazon.com/gp/product/1591847818/ref=as_li_qf_asin_il_tl?ie=UTF8&tag=farnamstreet-20&creative=9325&linkCode=as2&creativeASIN=1591847818&linkId=ea6830b2cd6dce2e3b20e3f5becde10b) and used with permission from the author.
&emsp;
&emsp;
---
`$= dv.el('center', 'Source: ' + dv.current().Link + ', ' + dv.current().Date.toLocaleString("fr-FR"))`

@ -10,6 +10,7 @@ Product:
Type: "IT"
Link: "https://git-scm.com/"
Value: "Free"
CollapseMetaTable: yes
---

@ -151,7 +151,7 @@ Caddy's configuration file is inder:
Default configuration is:
```ad-code
~~~yaml
~~~javascript
(localhost) {
root * /var/www/html
encode gzip zstd
@ -207,7 +207,7 @@ sudo systemctl restart php7.4-fpm
##### Preliminary CORS code snippet
```ad-code
~~~yaml
~~~javascript
(cors) {
@origin{args.0} header Origin {args.0}
header @origin{args.0} Access-Control-Allow-Origin "{args.0}"
@ -220,7 +220,7 @@ sudo systemctl restart php7.4-fpm
##### CORS for a sub-domain
```ad-code
~~~yaml
~~~javascript
import cors (http://subdomain.tld)
header Access-Control-Allow-Methods "POST, GET, OPTIONS, PUT"
header Access-Control-Allow-Headers "*"
@ -235,10 +235,10 @@ sudo systemctl restart php7.4-fpm
#### Configuration of a sub-domain suffix
[[#^Top|TOP]]
Configuration requires to add the following in the sub-domain definition:
Configuration requires to add the following in the sub-domain definition of the [[Configuring Caddy#Caddy configuration file|Caddyfile]]:
```ad-code
~~~yaml
~~~javascript
handle_path /(suffix)* {
root * /(path to suffix)
file_server
@ -257,7 +257,7 @@ Configuration requires to add the following in the sub-domain definition:
Configuration of a service attached to the docker network is easy:
```ad-code
~~~yaml
~~~javascript
(hostname) {
encode zstd gzip
reverse_proxy xxx.yyy.zzz.aaa:port
@ -292,8 +292,10 @@ caddy hash-password
2. **Define the array of users and hashed password**
In the [[Configuring Caddy#Caddy configuration file|Caddyfile]]:
```ad-code
~~~yaml
~~~javascript
(basic-auth) {
basicauth / {
user hashed-password
@ -304,8 +306,10 @@ caddy hash-password
3. **Define the snippet to test whether the cookie is installed**
In the [[Configuring Caddy#Caddy configuration file|Caddyfile]]:
```ad-code
~~~yaml
~~~javascript
(proxy-auth) {
% if cookie not = some-token-nonsense
@no-auth {
@ -325,10 +329,10 @@ caddy hash-password
##### Intermediary authentication page
[[#^Top|TOP]]
After setting up a new subdomain/page and appropriate DNS records, define it as follows:
After setting up a new subdomain/page and appropriate DNS records, define it as follows in the [[Configuring Caddy#Caddy configuration file|Caddyfile]]:
```ad-code
~~~yaml
~~~javascript
auth.example.com {
route / {
% require authentication
@ -357,7 +361,7 @@ auth.example.com {
Simply add the following at the top of all declarations for sub-domain definitions:
```ad-code
~~~yaml
~~~javascript
import proxy-auth
~~~
```
@ -370,11 +374,11 @@ import proxy-auth
#### Configuring logging for Caddy
1. In the Caddyfile, add a logging module:
1. In the [[Configuring Caddy#Caddy configuration file|Caddyfile]], add a logging module:
```ad-code
title: logging script
~~~bash
~~~javascript
(log) {
log {
@ -383,7 +387,7 @@ title: logging script
roll_local_time
# Other parameters can be found on the Caddy website
}
format console # (or stoud)
format json # (or console)
level INFO # (or ERROR)
}
}
@ -392,6 +396,16 @@ title: logging script
&emsp;
2. In the global configuration section, add the `import log` directive
```ad-code
~~~javascript
{
import log
}
~~~
```
2. In each subdomain definition, add the following line
`import log`
@ -416,6 +430,18 @@ Look for a folder with the following sequence:
&emsp;
#### Reading the log file
Caddy does offer a `common_log` field in their JS log that can be called for consumption by other software:
```ad-command
~~~bash
sudo cat /var/log/caddy/caddy.log | jq -r ' .. | .common_log? | select(. !=null)'
~~~
```
&emsp;
---
&emsp;

@ -196,6 +196,16 @@ To the following file:
The command needs to be run periodically.
Otherwise, use the below sequence in the relevant folder:
```ad-command
~~~bash
docker-compose down
docker-compose pull
docker-compose up -d
~~~
```
&emsp;
#### Updating containers

@ -148,13 +148,13 @@ Or
```ad-code
~~~bash
[postfix]
enabled = true
maxretry = 3
bantime = 1h
filter = postfix[mode=aggressive]
filter = postfix
mode = aggressive
action = iptables-multiport[name=postfix, port="http,https,smtp,submission,pop3,pop3s,imap,imaps,sieve", protocol=tcp]
telegram
mode = more
port = smtp,465,submission
logpath = %(postfix_log)s
backend = %(postfix_backend)s
@ -163,7 +163,7 @@ backend = %(postfix_backend)s
enabled = true
bantime = 1h
filter = postfix.auth
action = iptables-multiport[name=postfix, port="http,https,smtp,submission,pop3,pop3s,imap,imaps,sieve, protocol=tcp]
action = iptables-multiport[name=postfix, port="http,https,smtp,submission,pop3,pop3s,imap,imaps,sieve", protocol=tcp]
telegram
logpath = /var/log/mail.log
ignoreip = 127.0.0.1/8

@ -0,0 +1,337 @@
---
Alias: ["Prometheus"]
Tag: ["Computer", "Server", "Monitoring"]
Date: 2022-03-19
DocType: "Personal"
Hierarchy: "NonRoot"
TimeStamp:
location: [47.3639129,8.55627491017841]
CollapseMetaTable: Yes
---
Parent:: [[Selfhosting]], [[Configuring Caddy|caddy]], [[Server Tools]]
---
&emsp;
```button
name Save
type command
action Save current file
id Save
```
^button-ConfiguringPrometheusNSave
&emsp;
# Configuring Prometheus
&emsp;
```ad-abstract
title: Summary
collapse: open
This not runs through the installation and use of Prometheus as a monitoring tool.
Prometheus interacts better with json logs rather than common log language, which is caddy's output.
```
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### Introduction
&emsp;
[Prometheus](https://prometheus.io/docs/introduction/overview/) is a free and open-source monitoring and alerting tool that was initially used for monitoring metrics at SoundCloud back in 2012. It is written in Go programming language.
Prometheus monitors and records real-time events in a time-series database. Since then it has grown in leaps and bounds and had been adopted by many organizations to monitor their infrastructure metrics. Prometheus provides flexible queries and real-time alerting which helps in quick diagnosis and troubleshooting of errors.
Prometheus comprises the following major components:
- The main Prometheus server for scraping and storing time-series data.
- Unique exporters for services such as Graphite, HAProxy, StatsD and so much more
- An alert manager for handling alerts
- A push-gateway for supporting transient jobs
- Client libraries for instrumenting application code
&emsp;
---
&emsp;
### Installing Prometheus
&emsp;
#### Installing the main modules
But first, we need to create the configuration and data directories for Prometheus.
To create the configuration directory, run the command:
```ad-command
~~~bash
sudo mkdir -p /etc/prometheus
~~~
```
&emsp;
For the data directory, execute:
```ad-command
~~~bash
sudo mkdir -p /var/lib/prometheus
~~~
```
&emsp;
Once the directories are created, grab the compressed installation file:
```ad-command
~~~bash
wget https://github.com/prometheus/prometheus/releases/download/v2.31.0/prometheus-2.31.0.linux-amd64.tar.gz
~~~
```
&emsp;
Once downloaded, extract the tarball file.
```ad-command
~~~bash
tar -xvf prometheus-2.31.3.linux-amd64.tar.gz
~~~
```
&emsp;
Then navigate to the Prometheus folder.
```ad-command
~~~bash
cd prometheus-2.31.3.linux-amd64
~~~
```
&emsp;
Once in the [directory move](https://linoxide.com/mv-command-in-linux/) the  `prometheus` and `promtool` binary files to `/usr/local/bin/` folder.
```ad-command
~~~bash
sudo mv prometheus promtool /usr/local/bin/
~~~
```
&emsp;
Additionally, move console files in `console` directory and library files in the `console_libraries`  directory to `/etc/prometheus/` directory.
```ad-command
~~~bash
sudo mv consoles/ console_libraries/ /etc/prometheus/
~~~
```
&emsp;
Also, ensure to move the prometheus.yml template configuration file to the  **`/etc/prometheus/`** directory.
```ad-command
~~~bash
sudo mv prometheus.yml /etc/prometheus/prometheus.yml
~~~
```
&emsp;
At this point, Prometheus has been successfully installed. To check the version of Prometheus installed, run the command:
```ad-command
~~~bash
prometheus --version
~~~
```
&emsp;
Output:
```ad-code
~~~bash
prometheus, version 2.31.3 (branch: HEAD, revision: f29caccc42557f6a8ec30ea9b3c8c089391bd5df)
build user: root@5cff4265f0e3
build date: 20211005-16:10:52
go version: go1.17.1
platform: linux/amd64
~~~
```
&emsp;
```ad-command
~~~bash
promtool --version
~~~
```
&emsp;
Output:
```ad-code
~~~bash
promtool, version 2.31.3 (branch: HEAD, revision: f29caccc42557f6a8ec30ea9b3c8c089391bd5df)
build user: root@5cff4265f0e3
build date: 20211005-16:10:52
go version: go1.17.1
platform: linux/amd64
~~~
```
If your output resembles what I have, then you are on the right track. In the next step, we will create a system group and user.
&emsp;
#### Permissions & User Management
It's essential that we create a Prometheus group and user before proceeding to the next step which involves creating a system file for Prometheus.
To  create a `prometheus` [group](https://linoxide.com/groupadd-command/) execute the command:
```ad-command
~~~bash
sudo groupadd --system prometheus
~~~
```
&emsp;
Thereafter, Create `prometheus` user and assign it to the just-created `prometheus` group.
```ad-command
~~~bash
sudo useradd -s /sbin/nologin --system -g prometheus prometheus
~~~
```
&emsp;
Next, configure the directory ownership and permissions as follows.
```ad-command
~~~bash
sudo chown -R prometheus:prometheus /etc/prometheus/ /var/lib/prometheus/$ sudo chmod -R 775 /etc/prometheus/ /var/lib/prometheus/
~~~
```
The only part remaining is to make Prometheus a systemd service so that we can easily manage its running status.
&emsp;
#### Configuring the service
Using your favorite text editor, create a systemd service file:
```ad-command
~~~bash
sudo nano /etc/systemd/system/prometheus.service
~~~
```
&emsp;
Paste the following lines of code.
```ad-code
~~~bash
[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target
[Service]
User=prometheus
Group=prometheus
Restart=always
Type=simple
ExecStart=/usr/local/bin/prometheus \
--config.file=/etc/prometheus/prometheus.yml \
--storage.tsdb.path=/var/lib/prometheus/ \
--web.console.templates=/etc/prometheus/consoles \
--web.console.libraries=/etc/prometheus/console_libraries \
--web.listen-address=0.0.0.0:9090
[Install]
WantedBy=multi-user.target
~~~
```
Save the changes and exit the systemd file.
Then proceed and start the Prometheus service.
```ad-command
~~~bash
sudo systemctl start prometheus
~~~
```
&emsp;
Enable the Prometheus service to run at startup. Therefore invoke the command:
```ad-command
~~~bash
sudo systemctl enable prometheus
~~~
```
&emsp;
Then confirm the status of the Prometheus service.
```ad-command
~~~bash
sudo systemctl status prometheus
~~~
```
![Check status of Prometheus services](https://linoxide.com/wp-content/uploads/2021/11/2021-10-1003-Check-status-of-Prometheus-services.png)![Check status of Prometheus services](https://linoxide.com/wp-content/uploads/2021/11/2021-10-1003-Check-status-of-Prometheus-services.png)
&emsp;
#### Configuration of user acccess
Finally, to access Prometheus, parameter your reverse-proxy ([[Configuring Caddy|caddy]]) to point back to the service.
It is accessible below, under internal port 9090:
```ad-address
https://prometheus.mfxm.fr
```
&emsp;
![prometheus dashboard](https://linoxide.com/wp-content/uploads/2021/11/2021-10-1003-Prometheus-dashboard-1024x440.png)![prometheus dashboard](https://linoxide.com/wp-content/uploads/2021/11/2021-10-1003-Prometheus-dashboard-1024x440.png)
&emsp;
&emsp;

@ -1,10 +1,10 @@
---
Alias: [""]
Tag: [""]
Alias: ["Telegram bot"]
Tag: ["Computer", "Server", "Communication", "Monitoring"]
Date: 2022-03-10
DocType:
Hierarchy:
DocType: "Personal"
Hierarchy: "NonRoot"
TimeStamp:
location:
CollapseMetaTable: Yes

@ -237,8 +237,10 @@ sudo bash /etc/addip4ban/addip4ban.sh
#### Ban List Tasks
- [ ] [[Selfhosting]], [[Configuring UFW|Firewall]] Get IP addresses caught by Postfix 🔁 every week on Saturday 📅 2022-03-19
- [ ] [[Selfhosting]], [[Configuring UFW|Firewall]]: Update the Blocked IP list 🔁 every month on Saturday 📅 2022-03-19
- [ ] [[Selfhosting]], [[Configuring UFW|Firewall]] Get IP addresses caught by Postfix 🔁 every week on Saturday 📅 2022-03-26
- [x] [[Selfhosting]], [[Configuring UFW|Firewall]] Get IP addresses caught by Postfix 🔁 every week on Saturday 📅 2022-03-19 ✅ 2022-03-18
- [ ] [[Selfhosting]], [[Configuring UFW|Firewall]]: Update the Blocked IP list 🔁 every month on Saturday 📅 2022-03-26
- [x] [[Selfhosting]], [[Configuring UFW|Firewall]]: Update the Blocked IP list 🔁 every month on Saturday 📅 2022-03-19 ✅ 2022-03-18
[[#^Top|TOP]]

@ -302,6 +302,8 @@ And `\q` to exit the db.
&emsp;
- [ ] [[Selfhosting]], [[Server Alias|Email Alias]]: Upgrader & Health checks 🔁 every 4 months 📅 2022-03-31
- [ ] [[Server Alias]]: Backup server 🔁 every 6 months on the 1st Tuesday 📅 2022-09-06
- [x] [[Server Alias]]: Backup server 🔁 every 6 months on the 1st Tuesday 📅 2022-03-11 ✅ 2022-03-11
- [x] [[Server Alias]]: Backup server 🔁 every 6 months on the 1st Tuesday 📅 2021-09-15 ✅ 2022-01-08

@ -434,6 +434,8 @@ title: Nextcloud tutorial
- [x] [[Server Cloud]]: Backup server 🔁 every 6 months on the 1st Tuesday ✅ 2021-09-14
- [x] Set-up landing page
- [ ] [[Selfhosting]], [[Server Cloud|Cloud]]: Upgrader & Health checks 🔁 every 4 months 📅 2022-05-01
[[#^Top|TOP]]
&emsp;

@ -146,7 +146,7 @@ LWERS4M7njDLiAJe5A6gkv9jRDabvnzBGyYk9vPr1F5dY0LMu47FSjB0v21BAE83rYTOksElzcYmioWA
| Program name | Type | Description
|----------------|------|-------------
| **[[Configuring Fail2ban|fail2ban]]** | Daemon | Blocks suspicious attempts to login
| **[[Configuring Fail2ban\|fail2ban]]** | Daemon | Blocks suspicious attempts to login
| **unattended-upgrades** | Program | Enables automatic updates of installed programs and OS
| **logwatch** | Daemon | Monitors activity on server and sends activity logs
@ -293,7 +293,7 @@ title: service parameters
```
```ad-path
~/standalone/docker/auth/.env
~/standalone/docker/auth.env
```
Docs can be found [here](https://docs.standardnotes.com/self-hosting/docker).
@ -427,32 +427,38 @@ HOST = (hostname):25
&emsp;
#### Automation deamon
#### News Aggregator
[[#^Top|TOP]]
&emsp;
[Jenkins](https://jenkins.io) is a program enabling automation between online services. Jenkins has a hook with Gitea, hence the choice.
[FreshRSS](https://freshrss.org) is a News aggregator enabling to read and manage RSS feeds.
It is open-source and self-hostable.
&emsp;
##### Service parameters (Jenkins)
##### Service parameters (News)
```ad-info
title: service parameters
**IP**: 172.17.0.2:8080
**DockerNames**: 7a756f31ea2a
**IP**: 172.20.0.3:80
**DockerNames**: app-freshrss
---
**Address**: https://jenkins.mfxm.fr
**Address**: https://news.mfxm.fr
```
&emsp;
##### Configuration (Jenkins)
##### Configuration (News)
Fully fletched Docker set-up, no docker compose.
Docker compose set-up.
```ad-path
~/freshrss
```
Docs can be found [here](https://www.jenkins.io/doc/book/installing/).
Docs can be found [here](https://github.com/freshrss/freshrss).
In addition, FreshRSS offers the ability to install extensions relatively easily from within the Settings menu.
&emsp;
@ -506,7 +512,7 @@ List of monitored services:
- SSH
- [[Configuring Fail2ban|Fail2ban]]
- cron
- Postfix
- [[Configuring Postfix|Postfix]]
- docker
- Bitwarden
- Mininote
@ -563,6 +569,12 @@ List of monitored services:
- [x] [[Server Tools]]: Backup server 🔁 every 6 months on the 1st Tuesday ✅ 2021-10-13
- [x] Set-up landing page
- [ ] [[Selfhosting]], [[Server Tools|Tools]]: Upgrader Gitea & Health checks 🔁 every 4 months 📅 2022-06-18
- [ ] [[Selfhosting]], [[Server Tools|Tools]]: Upgrader Bitwarden & Health checks 🔁 every 4 months 📅 2022-04-18
- [ ] [[Selfhosting]], [[Server Tools|Tools]]: Upgrader Standard Notes & Health checks 🔁 every 4 months 📅 2022-05-18
[[#^Top|TOP]]
&emsp;

@ -285,6 +285,9 @@ Everything is rather self-explanatory.
- [x] [[Server VPN]]: Backup server 🔁 every 6 months on the 1st Tuesday 📅 2021-10-14 ✅ 2022-01-08
- [x] [[Server VPN]]: Backup server 🔁 every 6 months on the 1st Tuesday ✅ 2021-10-13
- [ ] [[Selfhosting]], [[Server VPN|VPN]]: Check VPN state & dashboard 🔁 every 3 months 📅 2022-06-18
- [x] [[Selfhosting]], [[Server VPN|VPN]]: Check VPN state & dashboard 🔁 every 3 months 📅 2022-03-18 ✅ 2022-03-18
[[#^Top|TOP]]
&emsp;

@ -69,3 +69,7 @@
2022/03/14 Migros
expenses:Current expenses:CHF CHF85.50
assets:Cash:CHF
2022/03/18 Migros
expenses:Current expenses:CHF CHF24.60
assets:Cash:CHF

@ -72,7 +72,8 @@ All tasks and to-dos Crypto-related.
[[#^Top|TOP]]
&emsp;
- [ ] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-03-18
- [ ] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-03-25
- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-03-18 ✅ 2022-03-18
- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-03-11 ✅ 2022-03-12
- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-03-04 ✅ 2022-03-05
- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-02-25 ✅ 2022-02-25

@ -72,7 +72,8 @@ Note summarising all tasks and to-dos for Listed Equity investments.
[[#^Top|TOP]]
&emsp;
- [ ] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-03-18
- [ ] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-03-25
- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-03-18 ✅ 2022-03-18
- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-03-11 ✅ 2022-03-12
- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-03-04 ✅ 2022-03-05
- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-02-25 ✅ 2022-02-25

@ -72,7 +72,8 @@ Tasks and to-dos for VC investments.
[[#^Top|TOP]]
&emsp;
- [ ] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-03-18
- [ ] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-03-25
- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-03-18 ✅ 2022-03-18
- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-03-11 ✅ 2022-03-12
- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-03-04 ✅ 2022-03-05
- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-02-25 ✅ 2022-02-25

Loading…
Cancel
Save