139 lines
4 KiB
Markdown
139 lines
4 KiB
Markdown
# Ansible-Kurs
|
|
|
|
## Zuordnung
|
|
|
|
* `tn01` - Andreas
|
|
* `tn02` - Götz
|
|
* `tn03` - David
|
|
* `tn04` - Ralf
|
|
* `tn05` - Wolfgang
|
|
* `tn06` - Daniel
|
|
* `tn07` - Patrick
|
|
* `tn08` - Paulius
|
|
* `tn09` - Volker
|
|
|
|
## Allgemein
|
|
|
|
### root-Rechte
|
|
Der Benutzer `kurs` ist in den `sudo`-Einstellungen (ohne Passwort-Eingabe) hinterlegt.
|
|
|
|
Ihr könnt also `sudo -Es`, `sudo -i`, `sudo su -`, ... oder natürlich auch `sudo apt install ...` usw. verwenden!
|
|
|
|
|
|
## Debian
|
|
|
|
### Paketmanager Kurzeinführung
|
|
* Index-Files aktualisieren: `(sudo) apt(-get) update`
|
|
* Pakete suchen (**alle** Begriffe!): `apt-cache search ansible lint`
|
|
* Pakete installieren: `(sudo) apt(-get) install ansible-lint`
|
|
|
|
### Standard-Editor anpassen
|
|
```
|
|
root@tn00-purple:~# update-alternatives --config editor
|
|
There are 8 choices for the alternative editor (providing /usr/bin/editor).
|
|
|
|
Selection Path Priority Status
|
|
------------------------------------------------------------
|
|
* 0 /usr/bin/joe 70 auto mode
|
|
1 /bin/nano 40 manual mode
|
|
2 /usr/bin/jmacs 50 manual mode
|
|
3 /usr/bin/joe 70 manual mode
|
|
4 /usr/bin/jpico 50 manual mode
|
|
5 /usr/bin/jstar 50 manual mode
|
|
6 /usr/bin/rjoe 25 manual mode
|
|
7 /usr/bin/vim.basic 30 manual mode
|
|
8 /usr/bin/vim.tiny 15 manual mode
|
|
|
|
Press <enter> to keep the current choice[*], or type selection number: 8
|
|
[...]
|
|
root@tn00-purple:~# ls -l /etc/alternatives/editor /etc/alternatives/vim
|
|
lrwxrwxrwx 1 root root 18 Nov 22 09:09 /etc/alternatives/editor -> /usr/bin/vim.basic
|
|
lrwxrwxrwx 1 root root 18 Aug 17 21:58 /etc/alternatives/vim -> /usr/bin/vim.basic
|
|
```
|
|
|
|
|
|
|
|
## SSH-Agent
|
|
|
|
### SSH-Agent in einer Sitzung starten
|
|
|
|
```
|
|
kurs@tn00-purple:~# eval $(ssh-agent)
|
|
Agent pid 2720104
|
|
```
|
|
|
|
### SSH-Key am Agent registrieren
|
|
```
|
|
kurs@tn00-purple:~# ssh-add
|
|
Enter passphrase for /home/svelt/.ssh/id_ed25519:
|
|
```
|
|
|
|
### Ein SSH-Agent in mehreren SSH-Verbindungen
|
|
|
|
1. SSH-Agent starten
|
|
```
|
|
kurs@tn00-purple:~# eval $(ssh-agent | tee ~/.ssh-agent.sh)
|
|
SSH_AUTH_SOCK=/tmp/ssh-r4RVMmRg9KAR/agent.2720217; export SSH_AUTH_SOCK;
|
|
SSH_AGENT_PID=2720218; export SSH_AGENT_PID;
|
|
echo Agent pid 2720218;
|
|
Agent pid 2720218;
|
|
```
|
|
2. In **jeder weiteren** SSH-Verbindung auf die VM (per copy&paste):
|
|
- Kann für weitere Verbindungen auch später gemacht werden
|
|
```
|
|
kurs@tn00-purple:~# source ~/.ssh-agent.sh
|
|
Agent pid 2720218;
|
|
```
|
|
3. Verbindung zum SSH-Agent mit `ssh-add -l` testen
|
|
- "Could not connect to agent" -> Agent läuft nicht und/oder Variablen nicht gesetzt
|
|
- "This agent has no identities" -> Verbindung zum Agent geht, Agent hat aber keine Keys
|
|
- Key -> Verbindung zum Agent geht, Key(s) registriert und verfügbar (4. überflüssig)
|
|
4. SSH-Key registrieren
|
|
- nur einmal nötig
|
|
- Variablen via Script aus 2. Schritt müssen gesetzt sein
|
|
```
|
|
kurs@tn00-purple:~# ssh-add
|
|
```
|
|
Damit könnt Ihr dann den einen Agent in allen SSH-Verbindungen zur VM nutzen.
|
|
|
|
### Alternative: Keychain
|
|
|
|
Voraussetzung: SSH-Key existiert, liegt unter (beliebigem) Namen unter `~/.ssh/`
|
|
|
|
1. Keychain installieren
|
|
```
|
|
kurs@tn00-purple:~$ apt install keychain
|
|
```
|
|
2. Von Hand testen
|
|
```
|
|
kurs@tn00-purple:~$ keychain ~/.ssh/id_ed25519
|
|
|
|
* keychain 2.8.5 ~ http://www.funtoo.org
|
|
* Starting ssh-agent...
|
|
* Adding 1 ssh key(s): /home/kurs/.ssh/id_ed25519
|
|
Enter passphrase for /home/kurs/.ssh/id_ed25519:
|
|
* ssh-add: Identities added: /home/kurs/.ssh/id_ed25519
|
|
|
|
kurs@tn00-purple:~$ ssh-add -l
|
|
Could not open a connection to your authentication agent.
|
|
|
|
kurs@tn00-purple:~$ cat ~/.keychain/${HOSTNAME}-sh
|
|
SSH_AUTH_SOCK=/tmp/ssh-pZf3VyTB4hs3/agent.1612572; export SSH_AUTH_SOCK;
|
|
SSH_AGENT_PID=1612575; export SSH_AGENT_PID;
|
|
|
|
kurs@tn00-purple:~$ . ~/.keychain/${HOSTNAME}-sh
|
|
kurs@tn00-purple:~$ ssh-add -l
|
|
256 SHA256:9+6FWilZKB46vt/n8HX3eVggjmdt40vXclBPkggaHvM kurs@tn00-purple (ED25519)
|
|
```
|
|
3. In Shell automatisch starten
|
|
```
|
|
cat <<EOF >>.bashrc
|
|
keychain ~/.ssh/id_ed25519
|
|
. ~/.keychain/${HOSTNAME}-sh
|
|
EOF
|
|
```
|
|
|
|
|
|
|
|
|