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
|
||||
```
|
||||
|
||||
## 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
|
||||
|
||||
### Mettre en place un serveur / client (tester les certificats)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue