Add SSH section
This commit is contained in:
parent
db4be169ee
commit
160b792888
1 changed files with 89 additions and 0 deletions
|
@ -114,6 +114,95 @@ exemple pour le traffic http:
|
||||||
iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-ports 8080
|
iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-ports 8080
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## SSH
|
||||||
|
|
||||||
|
SSH est bien plus qu'un outils pour se connecter sur un TTY à distance de
|
||||||
|
manière sécurisée. Il est possible de faire des rebonds, de rediriger les
|
||||||
|
connexions, créer des tunnels etc.
|
||||||
|
|
||||||
|
Certaines options de la ligne de commande peuvent être intéressante:
|
||||||
|
|
||||||
|
* `-f`: passer SSH en tâche de fond et rendre la main. Utile pour les tunnels
|
||||||
|
* `-N`: ne pas exécuter de commandes, utile lorsqu'on redirige simplement des
|
||||||
|
ports.
|
||||||
|
* `-n`: ne rien lire sur l'entrée standard, utile pour juste lancer une
|
||||||
|
application sur le serveur cible
|
||||||
|
* `-T`: ne pas allouer de pseudo terminal (mode non interactif)
|
||||||
|
* `-t`: forcer l'allocation de pseudo terminal
|
||||||
|
|
||||||
|
### Connexion par rebond
|
||||||
|
|
||||||
|
Le principe: utiliser un serveur pour faire un rebond et ainsi accéder à une
|
||||||
|
machine non accessible
|
||||||
|
|
||||||
|
```
|
||||||
|
ssh -J ssh.domain.com leserveur.domain.local
|
||||||
|
```
|
||||||
|
|
||||||
|
Je me connecte ainsi à `leserveur.domain.local` en passant par `ssh.domain.com`
|
||||||
|
|
||||||
|
Il est possible d'automatiser le rebond dans le fichier de configuration de ssh
|
||||||
|
(`~/.ssh/config`):
|
||||||
|
|
||||||
|
```
|
||||||
|
# Se connecter à mcgonagall en passant par jaguar
|
||||||
|
Host mcgonagall
|
||||||
|
Hostname mcgonagall
|
||||||
|
ProxyJump <user>@jaguar.emi.u-bordeaux.fr
|
||||||
|
User <user>
|
||||||
|
```
|
||||||
|
|
||||||
|
### Créer un tunnel
|
||||||
|
|
||||||
|
Il est aussi possible de créer un tunnel sécurisé afin d'accéder à une ressource
|
||||||
|
d'un réseau local en passant par un serveur SSH:
|
||||||
|
|
||||||
|
```
|
||||||
|
ssh -L 8443:192.168.0.254:443 ssh.domain.com
|
||||||
|
```
|
||||||
|
|
||||||
|
Ici la connections se fait comme suit:
|
||||||
|
|
||||||
|
```
|
||||||
|
localhost:8443 -> ssh.domain.com -> 192.168.0.253:443
|
||||||
|
```
|
||||||
|
|
||||||
|
Il est possible de faire l'inverse avec `-R`
|
||||||
|
|
||||||
|
### Proxy SOCKS
|
||||||
|
|
||||||
|
Il est possible de créer un proxy socks afin de faire une redirection de ports
|
||||||
|
dynamique (avec des applications qui le supporte):
|
||||||
|
|
||||||
|
```
|
||||||
|
ssh -D 9050 -Nf ssh.domaine.com
|
||||||
|
```
|
||||||
|
|
||||||
|
Il est par exemple possible de configure son navigateur web afin d'utiliser ce
|
||||||
|
proxy pour y faire transiter les données. Le site visité identifiera sa source
|
||||||
|
comme `ssh.domain.com`.
|
||||||
|
|
||||||
|
#### proxychains
|
||||||
|
|
||||||
|
Proxychains est un logiciel permettait de "proxyfier" n'importe quel logiciel.
|
||||||
|
Il est par exemple possible de lancer un scan de port via un proxy socks pour
|
||||||
|
être au plis près de sa cible.
|
||||||
|
|
||||||
|
La configuration se fait dans le fichier `/etc/proxychains.conf`, dans notre
|
||||||
|
exemple plus haut il faut ajouter la ligne si elle n'y est pas:
|
||||||
|
|
||||||
|
```
|
||||||
|
socks4 127.0.0.1 9050
|
||||||
|
```
|
||||||
|
|
||||||
|
Puis lancer un scan de ports en préfixant la commande de `proxychains`:
|
||||||
|
|
||||||
|
```
|
||||||
|
proxychains nmap -sV macible.domain.com
|
||||||
|
```
|
||||||
|
|
||||||
|
Il est ainsi possible de scanner les ports d'une machine inaccessible auparavant.
|
||||||
|
|
||||||
## Gnutls
|
## Gnutls
|
||||||
|
|
||||||
### Mettre en place un serveur / client (tester les certificats)
|
### Mettre en place un serveur / client (tester les certificats)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue