Vendredi, Novembre 19, 2021
Python - environnement virtuel
Environnement virtuel
python -m venv .venv
Activation sous Windows
.venv/Scripts/activate
Activation sous Linux
source .venv/Scripts/activate
Désactivation sous Windows
deactivate
Installation de module avec pip
pip install nom_du_module
Avec un proxy en utilisant —proxy, le user et le password sont à renseigner si besoin
pip install nom_du_module --proxy http://user:password@proxy:port
Mise à jour des modules
On peut mettre à jour les modules y compris pip.
pip install --upgrade pip
Afficher les routes réseaux
Linux
Sous linux voici trois façons d’obtenir une informations similaire avec des commandes différentes
Commande route
[user@machine ~]$ route -ne
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.0.254 0.0.0.0 UG 0 0 0 ens192
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 ens192
-n
affiche les adresses numériques sans résolution de nom-e
Commande netstat
[user@machine ~]$ netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.0.254 0.0.0.0 UG 0 0 0 ens192
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 ens192
Commande ip
[user@machine ~]$ ip route list
default via 192.168.0.254 dev ens192 proto static metric 100
192.168.0.0/20 dev ens192 proto kernel scope link src 192.168.0.100 metric 100
Windows
Sous Windows voici deux façons d’afficher les route:
La façon historique avec la commande batch
route print
La version moderne en PowerShell. A noter que de base je trouve la version PowerShell moins utile :)
Get-NetRoute
Couchdb - la base
Upload de fichier Powershell
Contexte:
des fichier json sont preésents dans une arborescende de dossier et doivent être uplaoder dans le serveur couchdb.
$files = ls *.json -Recurse -File | select FullName
foreach ($file in $files) {$f = $file.Fullname; curl -X POST "http://admin:password@server_couchdb:5984/alerts" -d "@$f" -H "Content-Type:application/json"}
- ligne 1 : liste les fichiers json du répertoire courant et des sous-répertoires, en sélectionnant le Fullname c’est à dire le chemin complet
- ligne 2 : pour chaque item on envoi le fichier json vers le serveur couchdb
Accès à l’interface web
L’accès se fait via un browser web à l’URL suivante: http://server_couchdb:5984/_utils/
Requête basique
Afficher tous les records:
{
"selector": {
"_id": {
"$gt": null
}
}
}
Afficher tous les records mais en séectionnant les colonnes:
{
"selector": {
"_id": {
"$gt": null
}
},
"fields": [
"column1",
"column2",
"column3.sub1",
"column5.sub1.sub2"
]
}
Tester port distant
Telnet
/! Uniquement pour les ports TCP
telnet [hostname/IP address] [port number]
Netcat
Pour les ports TCP.
Test d’un port unique, par exemple 443.
nc -z -v [hostname/IP address] [port number]
nc -z -v [hostname/IP address] 443
Test d’un range de port, par exemple tester les ports 20 à 22.
nc -z -v [hostname/IP address] [port range]
nc -z -v [hostname/IP address] 20-22
Test de ports multiples, par exemple ports 22, 80, 443:
nc -z -v [hostname/IP address] [port number] [port number] [port number]
nc -z -v [hostname/IP address] 22 80 443
Pour les ports UDP
nc -z -v -u [hostname/IP address] [port number]