Tramite ssh config potete definire più indirizzi per lo stesso host, scegliendo in automatico in base a qualsiasi comando! La sintassi non è delle migliori però funziona. L'ordine è importante.
Host zima
Port 2402
IdentityFile ~/.ssh/keys/lan.priv
RemoteCommand tmux -u a || tmux -u
RequestTTY yes
Match Host zima Exec "nc -w 1 -z 10.42.0.66 %p"
HostName 10.42.0.66
Host zima
HostName 192.168.1.8
Ho installato su Docker qBittorrent con interfaccia web e volevo fargli scaricare i files sull'HDD.
Per ogni servizio docker utilizzo un UID inventato giusto per non eseguirli come root nel namespace e isolare maggiormente i files tra container. Inoltre i files dell'HDD hanno tutti UID+GID = 1000. Come posso quindi far consentire letture e scritture mantenendo gli UID diversi, anche con nuovi files?
Welcome to Access Control Lists & special bits
Se il filesystem lo supporta (ext4 e btrfs sì) tramite ACL è possibile definire permessi aggiuntivi sui singoli files che estendono i normali user-group-other. Per le cartelle esistono anche permessi default che andranno applicati sui nuovi files.
Non bisogna dimenticarsi di impostare il bit eseguibile alle cartelle, altrimenti non si potrà navigarle. Con il carattere X maiuscolo questo viene impostato solo per le cartelle.
= ricorsivo, modifica, imposta rwX all'utente custom, imposta rwX al gruppo attuale, resetta maschera globale, uguale per i nuovi files
Incredibilmente questi permessi funzionano con i volumi Docker. Manca solo una cosa: il servizio che crea nuovi files imposterà il proprio UID+GID. Come mantenere almeno uno dei due senza specificarlo nel file di compose?
Tramite bit speciale setgid.
Così facendo ai nuovi files viene sempre forzato lo stesso GID della cartella padre.
Per ogni servizio docker utilizzo un UID inventato giusto per non eseguirli come root nel namespace e isolare maggiormente i files tra container. Inoltre i files dell'HDD hanno tutti UID+GID = 1000. Come posso quindi far consentire letture e scritture mantenendo gli UID diversi, anche con nuovi files?
Welcome to Access Control Lists & special bits
Se il filesystem lo supporta (ext4 e btrfs sì) tramite ACL è possibile definire permessi aggiuntivi sui singoli files che estendono i normali user-group-other. Per le cartelle esistono anche permessi default che andranno applicati sui nuovi files.
Non bisogna dimenticarsi di impostare il bit eseguibile alle cartelle, altrimenti non si potrà navigarle. Con il carattere X maiuscolo questo viene impostato solo per le cartelle.
setfacl -R -m 'u:231107:rwX,d:u:231107:rwX,g::rwX,d:g::rwX,m::rwx,d:m::rwx' \
/mnt/Carbon/Risorse
= ricorsivo, modifica, imposta rwX all'utente custom, imposta rwX al gruppo attuale, resetta maschera globale, uguale per i nuovi files
Incredibilmente questi permessi funzionano con i volumi Docker. Manca solo una cosa: il servizio che crea nuovi files imposterà il proprio UID+GID. Come mantenere almeno uno dei due senza specificarlo nel file di compose?
Tramite bit speciale setgid.
find /mnt/Carbon/Risorse -type d -exec chmod g+s '{}' \+Così facendo ai nuovi files viene sempre forzato lo stesso GID della cartella padre.
👀2
Se su Docker il comando
vi siete dimenticati il bit eseguibile
ls -al vi stampatotal 0
d????????? ? ? ? ? ?
d????????? ? ? ? ? ?
-????????? ? ? ? ? ?
d????????? ? ? ? ? ?
d????????? ? ? ? ? ?
-????????? ? ? ? ? ?
vi siete dimenticati il bit eseguibile
Schema permessi unix
Speciali
• su binari eseguiti (niente script) il nuovo processo avrà lo stesso uid dell'owner, usato da
• su binari eseguiti (niente script) il nuovo processo avrà lo stesso gid dell'owner
• su file non eseguibili, storicamente usato per locking
• su cartelle forza lo stesso gid a nuovi files della stessa, viene ereditato su nuove cartelle
• su files eseguibili, storicamente usato per mantenerli nella swap
• su cartelle, solo l'owner può rinominare ed eliminare i propri files
-r-- leggi file--w- scrivi file---x esegui file---s specialedr-- leggi nomi files (e solo quelli)d-w- modifica lista files (crea, rinomina, elimina) (solo con x)d--x consenti workdir e accedi ai files (leggi e scrivi), se da solo permette di interagire alla ciecad--s specialeSpeciali
u+s setuid (senza x mostrato come S)• su binari eseguiti (niente script) il nuovo processo avrà lo stesso uid dell'owner, usato da
sudo per diventare rootg+s setgid (senza x mostrato come S)• su binari eseguiti (niente script) il nuovo processo avrà lo stesso gid dell'owner
• su file non eseguibili, storicamente usato per locking
• su cartelle forza lo stesso gid a nuovi files della stessa, viene ereditato su nuove cartelle
o+t sticky (senza x mostrato come T)• su files eseguibili, storicamente usato per mantenerli nella swap
• su cartelle, solo l'owner può rinominare ed eliminare i propri files
Forwarded from Hacker News
OnePlus update blocks downgrades and custom ROMs by blowing a fuse (🔥 Score: 160+ in 1 hour)
Link: https://readhacker.news/s/6Lg5i
Comments: https://readhacker.news/c/6Lg5i
Link: https://readhacker.news/s/6Lg5i
Comments: https://readhacker.news/c/6Lg5i
journalctl -u micro
Faccio per aprire firefox con un nuovo profilo e di base ha già un refresh rate di 120Hz. Come?? Sto confrontando prefs.js dei due profili ma non trovo niente...
Questo è il più grande mistero dopo il triangolo delle bermuda
journalctl -u micro
Faccio per aprire firefox con un nuovo profilo e di base ha già un refresh rate di 120Hz. Come?? Sto confrontando prefs.js dei due profili ma non trovo niente...
> copio il profilo per sperimentare
> cancello chrome/ (Firefox-UI-Fix) e user.js, niente
> cancello prop personalizzate, niente
> cancello prefs.js, niente
> cancello blocchi di files dello stesso tipo, niente
> cancello tutto lo storage, niente
> cancello tutte le estensioni, niente
> CANCELLO TUTTO, NIENTE
COSA DIAVOLO PERMETTE ALL'ALTRO PROFILO DI ANDARE A 120HZ????
> cancello chrome/ (Firefox-UI-Fix) e user.js, niente
> cancello prop personalizzate, niente
> cancello prefs.js, niente
> cancello blocchi di files dello stesso tipo, niente
> cancello tutto lo storage, niente
> cancello tutte le estensioni, niente
> CANCELLO TUTTO, NIENTE
COSA DIAVOLO PERMETTE ALL'ALTRO PROFILO DI ANDARE A 120HZ????
privacy.resistFingerprinting = false
privacy.fingerprintingProtection.overrides = (unset)
browser.privateWindowSeparation.enabled = true
Servono almeno queste opzioni perché firefox funzioni a 120Hz senza alcun altro override
L'ultima opzione fa incazzare perché se disattivata, altro non fa che nascondere l'icona della navigazione anonima nelle finestre anonime. CHE NON USO PER LA NAVIGAZIONE NORMALE
E non è ancora finita
privacy.fingerprintingProtection.overrides = (unset)
browser.privateWindowSeparation.enabled = true
Servono almeno queste opzioni perché firefox funzioni a 120Hz senza alcun altro override
L'ultima opzione fa incazzare perché se disattivata, altro non fa che nascondere l'icona della navigazione anonima nelle finestre anonime. CHE NON USO PER LA NAVIGAZIONE NORMALE
E non è ancora finita