Table des matières
- 2026:
- 2025:
4 billet(s) pour juillet 2026
| Procédure simple augmentation de la SWAP | 2026/07/17 15:49 | Jean-Baptiste |
| Exemple git clone avec Ansible | 2026/07/16 14:47 | Jean-Baptiste |
| Windows exe - Comparaison de fichiers binaires | 2026/07/16 10:25 | Jean-Baptiste |
| Pb git | 2026/07/01 17:36 | Jean-Baptiste |
SSH - l'homme du milieu man-in-the-middle attack - MITM
Voir http://www.phcomp.co.uk/Tutorials/Unix-And-Linux/ssh-check-server-fingerprint.html
/var/log/auth.log
Jan 13 18:08:07 ACME sshd[19573]: Invalid user from 10.227.01.32 Jan 13 18:08:07 ACME sshd[19573]: input_userauth_request: invalid user [preauth] Jan 13 18:08:07 ACME sshd[19573]: Failed none for invalid user from 10.227.01.32 port 38493 ssh2
Pb
Au début tout commence avec une connexion impossible et une erreur dans /var/log/auth.log Le nom de l'utilisateur n’apparaît pas.
Serveur
for file in *sa_key.pub do ssh-keygen -lf $file done
1024 82:45:ef:2d:a7:c1:38:30:64:3d:27:5f:07:2d:49:bb ssh_host_dsa_key.pub (DSA) 256 60:1d:11:ae:14:13:91:a6:d6:0c:0b:19:ff:ae:38:50 ssh_host_ecdsa_key.pub (ECDSA) 2048 42:51:fd:3f:d8:5e:ff:0f:7b:b4:ec:00:2b:4f:41:af ssh_host_rsa_key.pub (RSA)
Client
ssh localhost
The authenticity of host 'localhost (::1)' can't be established. ECDSA key fingerprint is 60:1d:11:ae:14:13:91:a6:d6:0c:0b:19:ff:ae:38:50. Are you sure you want to continue connecting (yes/no)?
~/.ssh/known_hosts
|1|L/bOL2nijC7tH8OmD3g4wDylRDk=|w2fAVJ4hqgexkcNn1kcQWkWJMwY= ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBgwV9MaQTOLDDCtn0hRMZQN9398Z4ciwN+mCKN+ZQ47FgXO/ObM5JRUIdZ68th9whxhaGItdAXjFUTpxhUHgyk=
/etc/ssh/ssh_host_ecdsa_key.pub
ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBgwV9MaQTOLDDCtn0hRMZQN9398Z4ciwN+mCKN+ZQ47FgXO/ObM5JRUIdZ68th9whxhaGItdAXjFUTpxhUHgyk= root@debian2
Avec WinScp
Sur le serveur
#ssh-keygen -E md5 -lf /etc/ssh/ssh_host_ed25519_key.pub awk '{print $2}' /etc/ssh/ssh_host_ed25519_key.pub | base64 -d | md5sum -b
3284028e26ac8b5eec88ce6d978d8e14 *-
Sur le client
Voir : winscp-mitm.png (
)
: info manquante
Squid - NTLM auth
Voir : https://wiki.squid-cache.org/ConfigExamples/Authenticate/WindowsActiveDirectory
squid.conf
httpd_suppress_version_string on auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp --domain=aspaway.fr auth_param ntlm children 50 auth_param ntlm keep_alive off acl ntlm proxy_auth REQUIRED http_access allow localnet ntlm
wbinfo -t wbinfo --ping-dc ntlm_auth --diagnostics --username=jean --domain=acme.fr
Notes son-alsa
Voir :
Voir aussi PulseAudio
alsamixer #this sets the simplified Pulseaudio mixer controls alsamixer -c0 #this sets up the actual ALSA sound card levels
alsamixer -c 0
[F4] pour les entrées son (micros) Input Source Rear Mic
A tester
Si tout est ok en root :
alsactl store
Mettre “Rear Mic” en “Input Source” en ligne de commande
amixer -c0 cset iface=MIXER,name='Input Source',index=0 'Rear Mic'
http://thenerdshow.com/index30e5.html
Ca marche ! Mais j'ai rajoutée cette ligne partout pour la lancer au démarrage du PC, pas moyen. Visiblement qqch change ma config son.
En tapant mate-session-properties (idem que gnome-session-properties, mais pour mate)
Système de son PulseAudio start-pulseaudio-x11
C'est lui le coupable. Je ruse en remplaçant la ligne :
start-pulseaudio-x11; amixer -c0 cset iface=MIXER,name='Input Source',index=0 'Rear Mic'
Ça ne marche pas. Un autre process se lançant au démarrage modifie ma config.
Je ruse en créant un script :
/usr/local/bin/jitsi.sh
#! /bin/bash sleep 15 ; amixer -c0 cset iface=MIXER,name='Input Source',index=0 'Rear Mic' jitsi
C'est lui que j'appelle au démarrage du PC.
Couper le son HP (Mute)
amixer set Master mute
Rétablir le son HP
amixer set Master toggle
Couper le son du micro (Mute)
amixer set Capture nocap
Rétablir le son du micro
amixer set Capture cap
Réduire ou augmenter le son
amixer -D pulse sset Master 50% amixer set Master 5+
Désactiver le micro
$ cat /proc/asound/modules 0 snd_hda_intel 1 snd_hda_intel
echo 'blacklist snd_hda_intel' | sudo tee -a /etc/modprobe.d/blacklist.conf
Autres
Sur Raspbian
/usr/sbin/alsactl -E HOME=/run/alsa -s -n 19 -c rdaemon
Mix
Solutions Serverless
Voir aussi :
- SlimFaas
| Nom | Dépôt code | Serverless FWK | Langu | K8S |
|---|---|---|---|---|
| Knative | https://github.com/knative/ | oui | Go | oui |
| OpenFaaS | https://github.com/openfaas | non | Go | Opt |
| OpenWhisk | https://github.com/apache/openwhisk | oui | Scala | Opt |
| Fission | https://github.com/fission/fission | plugin ? | Go | oui |
| #Fn | https://github.com/fnproject/fn#top | oui | Go | non |
| #Kubeless | https://github.com/vmware-archive/kubeless | oui | Go | oui |
Voir :
Voir aussi :
- firecracker-microvm
Knative
Knative est utilisé pour OpenShift / OKD
Tutos :
OpenFaaS
- can be deployed to a variety of container orchestrators such as Kubernetes, OpenShift, Docker Swarm or to a single host with faasd.
- Hélas pas pris nativement en charge par Serverless.com Framework.
Tutos :
Fn
Script initV
: Doublon avec script_init_wrapper
Aujourd'hui au boulot : install d'un logiciel privateur sur une Debian. Cette solution install un script dans /etc/init.d/ Je vais l'appeler ici MACHINAgent
J'ai donc mon beau script /etc/init.d/MACHINAgent
Le pb c'est qu'il démarre le processus avec les privilèges root
Une solution serait d'utiliser crontab sous un compte utilisateur.
@reboot /etc/init.d/MACHINAgent start
Je crée un utilisateur système. Mais la crontab, ce n'est pas une bonne idée :
- Il ne ferme pas l'appli correctement
- Logiquement tous les scripts /etc/init.d/ doivent pouvoir être lancer en root et lancer les process avec un compte dedié.
Lancement du serveur MACHIN sous un compte utilisateur (non-root) sous Debian.
## 1) Création d’un nouvel utilisateur dédie au serveur MACHIN.
Dans notre exemple il s’agit de « machin »
2) Création du script
/etc/init.d/MACHINWrapper
#! /bin/bash # chkconfig: 35 85 15 # description: Startup script for MACHIN Agent Wrapper ### BEGIN INIT INFO # Provides: MACHINWrapper # Required-Start: $network $local_fs $remote_fs $time $syslog # Required-Stop: $network $local_fs $remote_fs $time $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Wrapper pour lancer les scripts sysVinit avec un compte utilisateur (non root) # Description: Wrapper pour lancer les scripts sysVinit avec un compte utilisateur (non root) ### END INIT INFO MACHIN_USER=machin MACHIN_INITSCRIPT=/etc/init.d/MACHINAgent su - $MACHIN_USER -c "$MACHIN_INITSCRIPT $*"
Explications
Les commentaires servent !
- Ligne 1 : c'est le Shebang
- Ligne 2 : chkconfig sert pour Redhat/CentOS
- Ligne 3 : description sert aussi pour chkconfig !?
- Ligne 4 à 12 : C'est la même chose que chkconfig, mais pour la plupart des distros. C'est une norme LSB Voir https://wiki.debian.org/LSBInitScripts
- Ligne 13 à FIN : C'est le code.
- Ligne 13 : Variable MACHIN_USER qui contient le nom du compte dédié au service.
- Ligne 14 : Variable MACHIN_INITSCRIPT qui contient le chemin complet de l'ancien script que nous avons déplacé
- Ligne 15 FIN: On utilise la commande su pour changer de compte. Puis $* représente tous les arguments. Dans le cas d'un script init : start, stop, status, restart et éventuellement d'autres.
Note : Les commentaires du scripts sont nécessaire. Voir https://wiki.debian.org/LSBInitScripts http://linux.die.net/man/8/chkconfig
3) Gestion des services
Placer les droits d’exec :
chmod +x /etc/init.d/MACHINWrapper
Désactivation du démarrage de l’ancien script.
update-rc.d MACHINAgent remove
Activation du nouveau script
update-rc.d MACHINWrapper defaults
On vérifie :
find /etc/rc* -iname "*MACHIN*"
4) Fin
Arrêt process lancé en root
/etc/init.d/MACHINAgent stop
Ici l’utilisateur machin devient le nouveau propriétaires des fichiers
chown machin: /opt/machin/ -R
On démarre MACHINWrapper
/etc/init.d/MACHINWrapper start
En cas de Pb :
Refaire point 3 et 4. Idem si application patch.
Notes
NB : il convient dans la supervision de s’assurer que le process tourne sous le bon compte.
Exemple :
pgrep -u machin nomDuProcess && echo OK || echo NOK
