Compare commits

..
2 Commits
Author SHA1 Message Date
FabioandClaude Opus 5.5 6365654278 Merge lavoro/vpn-e-mail
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 21:05:31 +02:00
FabioandClaude Opus 5.5 5a2cd26f52 onboard: accessi nella mail, chiave AWS e VPN su LastPass
Utenti e password arrivano nella mail "I tuoi accessi OTO", pronti da
copiare; la chiave AWS e la VPN (file .ovpn e credenziali) stanno in note
LastPass. Claude installa OpenVPN Connect e guida la persona a scaricare
il file e accendere la VPN. Alla fine lei risponde alla mail.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 21:05:31 +02:00
3 changed files with 35 additions and 27 deletions
+24 -16
View File
@@ -2,8 +2,9 @@
Chi ti parla è una persona **nuova in OTO**, spesso non tecnica, al primo
giorno. Ti ha scritto qualcosa come «prepara il mio PC per OTO» e ha in mano
solo il messaggio di benvenuto che l'amministratore le ha condiviso su
LastPass: password e chiave AWS. **Il lavoro
la mail *I tuoi accessi OTO* che le ha mandato chi amministra (link,
utenti, password, la frase per te) e, su LastPass, la chiave AWS e, se
sviluppa, la VPN. **Il lavoro
lo fai tu**: installi i programmi, lanci i controlli, le dici cosa cliccare.
Lei fa solo quello che tu non puoi fare: i login nel browser, e scrivere i
propri segreti nel terminale. Parla semplice, un passo alla volta, e controlla
@@ -43,12 +44,12 @@ La spiegazione per le persone sta in
| Cosa | Dove lo trova o lo crea |
|---|---|
| Indirizzo, utente e password di AWS e di Gitea | nel **messaggio di benvenuto**: una nota che chi amministra le ha condiviso su **LastPass**. Se non ce l'ha, lo chiede a lui: tu non puoi recuperarlo |
| Indirizzo, utente e password di AWS e di Gitea | nella **mail *I tuoi accessi OTO*** che le ha mandato chi amministra: righe già pronte da copiare. Se non ce l'ha, risponde a quella mail o lo chiede a lui: tu non puoi recuperarlo |
| Codice dal telefono (MFA) di AWS | console AWS → il suo nome in alto a destra → *Security credentials* → riquadro *Multi-factor authentication (MFA)* → *Assign MFA device* → *Authenticator app*. Serve un'app di autenticazione sul telefono (Google Authenticator, Microsoft Authenticator o simili): se non ce l'ha, prima la installa dallo store |
| Chiave di accesso AWS (*Access key ID* e *Secret access key*) | nel **messaggio di benvenuto** su LastPass: la crea chi amministra insieme all'utente. Solo se lì non c'è (è arrivata prima, o la chiave è stata cancellata), la crea lei: console AWS → il suo nome in alto a destra → *Security credentials* → riquadro *Access keys* → *Create access key* → *Command Line Interface (CLI)* → spunta la conferma → *Next* → *Create access key*. I due pezzi sono nella pagina *Retrieve access keys*; la Secret si vede con *Show*, una volta sola. Se l'ha chiusa: cancella quella chiave dallo stesso riquadro e ne crea un'altra |
| Utente Gitea | è quello del messaggio di benvenuto (`nome.cognome`); su Gitea lo vede in alto a destra, cliccando l'icona del profilo |
| Chiave di accesso AWS (*Access key ID* e *Secret access key*) | in una **nota LastPass** condivisa da chi amministra (non nella mail, apposta): la crea chi amministra insieme all'utente. Solo se lì non c'è (è arrivata prima, o la chiave è stata cancellata), la crea lei: console AWS → il suo nome in alto a destra → *Security credentials* → riquadro *Access keys* → *Create access key* → *Command Line Interface (CLI)* → spunta la conferma → *Next* → *Create access key*. I due pezzi sono nella pagina *Retrieve access keys*; la Secret si vede con *Show*, una volta sola. Se l'ha chiusa: cancella quella chiave dallo stesso riquadro e ne crea un'altra |
| Utente Gitea | è nella mail (`nome.cognome`); su Gitea lo vede in alto a destra, cliccando l'icona del profilo |
| Email di lavoro | il suo indirizzo `@oto.agency` |
| File della VPN | lo manda chi amministra, che lo riceve dal fornitore. Il programma da installare dipende dal file: `.ovpn` → OpenVPN Connect, `.conf` → WireGuard. Se il file non le è arrivato, lo chiede a chi amministra |
| File e credenziali della VPN | in una **nota LastPass** condivisa da chi amministra: il file `.ovpn` è allegato alla nota (*Attachments* → si scarica, finisce in *Download*), utente e password della VPN sono scritti nella nota. Il programma è **OpenVPN Connect**, lo installi tu. Se la nota non c'è, lo chiede a chi amministra |
| Password del Mac (per Homebrew) | è quella con cui accende il Mac |
| Accesso a un progetto che non vede su Gitea | lo dà chi amministra: dille il nome del progetto da chiedere |
@@ -82,32 +83,34 @@ token, push), spiegala in una riga la prima volta.
1. **Programmi.** Servono git, la AWS CLI, Docker, curl e ssh. Installa
quello che manca:
- **Windows**: `winget install -e --id Git.Git`, `Amazon.AWSCLI`,
`Docker.DockerDesktop`. Docker vuole WSL2: `wsl --install`, poi un
`Docker.DockerDesktop` e, per chi sviluppa,
`OpenVPNTechnologies.OpenVPNConnect`. Docker vuole WSL2: `wsl --install`, poi un
riavvio. Windows chiederà conferma (finestra *Sì/No*): avvisa prima che
arriva e che va cliccato *Sì*. Dopo un'installazione il `PATH` nuovo lo
vede solo un terminale nuovo.
- **Mac**: prima Homebrew. Il suo installatore chiede la password del Mac,
quindi quel comando lo lancia la persona nel Terminale:
`/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"`.
Poi tu: `brew install git awscli` e `brew install --cask docker`.
Poi tu: `brew install git awscli` e `brew install --cask docker`
(per chi sviluppa anche `brew install --cask openvpn-connect`).
- Docker Desktop va **aperto una volta** a mano e le condizioni accettate:
finché non lo si fa, `docker info` non risponde.
2. **Questo repository sul PC**, se ci stai parlando da un link e non da
dentro la cartella: `git clone https://git.oto-farm.com/admin/_OTO_IT_onboard.git
~/Work/workspace/oto/_OTO_IT_onboard` (è pubblico, non ha segreti) e da lì
continui.
3. **Il login su AWS nel browser**, lo fa lei. Le password del messaggio di
3. **Il login su AWS nel browser**, lo fa lei. Le password della mail di
benvenuto sono già le definitive (dal 07/10/2026): né AWS né Gitea
chiedono di cambiarle, e su Gitea dal browser non c'è niente da fare.
- **AWS**: entrare dall'indirizzo del messaggio di benvenuto (*IAM user*,
- **AWS**: entrare dall'indirizzo della mail di benvenuto (*IAM user*,
utente e password) e attivare
l'MFA. I percorsi esatti sono nella tabella qui sopra: dàglieli un passo
alla volta. La chiave di accesso **non** la crea: è già nel messaggio di
benvenuto. Se lì non c'è, la crea adesso, e lascia aperta la pagina: la
alla volta. La chiave di accesso **non** la crea: è già nella nota
LastPass. Se lì non c'è, la crea adesso, e lascia aperta la pagina: la
parte segreta si vede una volta sola.
4. **`./configura.sh`**, nel terminale della persona. Chiede utente e
password di Gitea e poi i due pezzi della chiave AWS, che lei copia dal
messaggio di benvenuto su LastPass; crea l'accesso a
la nota LastPass; crea l'accesso a
Gitea, configura git, genera la chiave SSH e la carica sul suo profilo
Gitea (da lì la prende l'amministratore: **non va mandata a nessuno**),
scrive i nomi dei server in `~/.ssh/config`. Gitea viene prima apposta: è lui a dire chi è la persona. Se sul PC
@@ -116,9 +119,14 @@ token, push), spiegala in una riga la prima volta.
l'amministratore, perché quella chiave va disattivata. Una chiave altrui
non va mai tenuta "intanto che funziona": tutto quello che la persona fa
su AWS risulterebbe fatto dall'altro.
5. **VPN** (solo chi sviluppa): installare il programma giusto per il file
(vedi tabella) e aprirci dentro il file che le ha mandato chi amministra.
6. **Dirlo all'amministratore**: «ho finito la configurazione». È il segnale
5. **VPN** (solo chi sviluppa). OpenVPN Connect l'hai già installato tu; lei,
un passo alla volta: apre la nota VPN su LastPass e scarica il file
`.ovpn` allegato; apre OpenVPN Connect → *Upload File* (o *Import
Profile* → *File*) → *Browse* → il file in *Download*; scrive utente e
password della VPN dalla stessa nota, spunta *Save password*, *Connect*.
È accesa quando l'interruttore diventa verde (*Connected*).
6. **Dirlo all'amministratore**: risponde alla mail *I tuoi accessi OTO*
scrivendo «ho finito la configurazione». È il segnale
per mettere la sua chiave SSH sui server; finché non lo fa, staging resta
rosso.
7. **`./verifica.sh`**: tutto verde, o un elenco preciso di cosa manca e a chi
+2 -2
View File
@@ -14,8 +14,8 @@ scaricano i progetti stessi da AWS, con il tuo accesso personale.
Il resto lo fa Claude: installa i programmi e ti dice cosa cliccare. Tu fai i
login nel browser e scrivi le tue chiavi nel terminale quando te lo chiede.
Password e chiave AWS sono nel messaggio di benvenuto, la nota
che chi amministra ti ha condiviso su LastPass.
Utenti e password sono nella mail *I tuoi accessi OTO* che ti ha mandato chi
amministra; la chiave AWS e la VPN in una nota LastPass condivisa con te.
## Una regola
+9 -9
View File
@@ -18,16 +18,16 @@ titolo "1. Gitea"
# --------------------------------------------------------------------------
# Alla persona si chiede la password, non un token: il token lo crea lo
# script con l'API di Gitea, cosi' non c'e' da cercarlo fra le impostazioni.
# La password e' quella del messaggio di benvenuto: dal 07/10/2026 Gitea non
# La password e' quella della mail di benvenuto: dal 07/10/2026 Gitea non
# obbliga piu' a cambiarla. Chi e' stato creato prima invece deve ancora
# cambiarla nel browser, e Gitea gli risponde 403: lo si dice sotto.
UTENTE="$(utente_gitea)"
if [ -n "$UTENTE" ] ; then
ok "token Gitea gia' salvato (utente $UTENTE)"
else
echo " Utente e password di Gitea sono nel messaggio di benvenuto, la nota"
echo " LastPass che ti ha condiviso chi amministra."
read -r -p " Il tuo utente Gitea (nome.cognome, come nel messaggio di benvenuto): " UTENTE_DATO
echo " Utente e password di Gitea sono nella mail \"I tuoi accessi OTO\" che ti ha"
echo " mandato chi amministra: copiali da li'."
read -r -p " Il tuo utente Gitea (dalla mail, riga utente Gitea): " UTENTE_DATO
read -r -s -p " La tua password Gitea, dalla nota LastPass (non si vede, ed e' normale): " PASSWORD ; echo
# utente:password passano a curl da stdin, non dalla riga di comando
# (che chiunque sul PC vede con ps). Virgolette e \ vanno protette.
@@ -77,7 +77,7 @@ fi
titolo "2. AWS"
# --------------------------------------------------------------------------
# La chiave di accesso la crea chi amministra insieme all'utente, e la
# persona la trova nel messaggio di benvenuto su LastPass: qui la si incolla
# persona la trova nella nota LastPass della chiave AWS: qui la si incolla
# una volta e finisce in ~/.aws/credentials, dove la leggono la AWS CLI e gli
# script dei progetti. Se non ce l'ha (e' arrivata prima, o l'ha persa), se
# ne crea una dalla console: la strada e' scritta qui sotto.
@@ -88,10 +88,10 @@ titolo "2. AWS"
# quello che la persona fa su AWS risulterebbe fatto da un altro.
chiedi_chiave_aws () {
echo " Serve la tua chiave di accesso AWS, due pezzi: Access key ID e Secret access key."
echo " Li trovi nel messaggio di benvenuto, nella nota LastPass che ti ha condiviso"
echo " Non sono nella mail: li trovi nella nota LastPass che ti ha condiviso"
echo " chi amministra. Se li' non c'e', la crei tu nella console AWS:"
echo " 1. entra su $AWS_CONSOLE (IAM user, utente e password"
echo " del messaggio di benvenuto);"
echo " della mail di benvenuto);"
echo " 2. il tuo nome in alto a destra → Security credentials;"
echo " 3. riquadro Access keys → Create access key → Command Line Interface (CLI),"
echo " spunta la conferma → Next → Create access key."
@@ -113,7 +113,7 @@ chiedi_chiave_aws () {
if ! IDENTITA="$(aws sts get-caller-identity --query Arn --output text 2> /dev/null)" ; then
male "AWS non accetta questa chiave: controlla di aver copiato i due pezzi interi, senza scambiarli, e rilancia."
elif [ -n "$UTENTE" ] && [ "${IDENTITA##*/}" != "$UTENTE" ] ; then
male "questa chiave e' di ${IDENTITA##*/}, non tua ($UTENTE): usa quella del tuo messaggio di benvenuto, e rilancia."
male "questa chiave e' di ${IDENTITA##*/}, non tua ($UTENTE): usa quella della tua nota LastPass, e rilancia."
else
ok "accesso AWS: ${IDENTITA##*/}"
fi
@@ -211,4 +211,4 @@ ok "ssh $STAGING_NOME, ssh $PRODUZIONE_NOME e ssh $PRODUZIONE_VECCHIA_NOME: conf
# --------------------------------------------------------------------------
titolo "Fatto"
# --------------------------------------------------------------------------
echo " Ora: importa il file della VPN, poi lancia ./verifica.sh"
echo " Ora: accendi la VPN (file e credenziali nella nota LastPass), poi torna da Claude."