alessandro

Reset dispositivi Ubiquiti con SSH

How to Factory Reset a Unifi AP with SSH

If you are experiencing issues with your Unifi Access Point (AP), it may be necessary to perform a factory reset. This process will erase all of the configuration settings and restore the device to its default state. In this article, we will walk you through the steps to factory reset a Unifi AP using SSH.

Step 1: Connect to the Unifi AP via SSH

To begin, you will need to connect to the Unifi AP using SSH. You can use any SSH client to do this, such as PuTTY or Terminal. Once you have opened your SSH client, enter the IP address of the Unifi AP and click “Connect.”

Step 2: Log in to the Unifi AP

After you have connected to the Unifi AP via SSH, you will need to log in using your Unifi username and password. If you have not changed the default login credentials, the username is “ubnt” and the password is “ubnt.”

Step 3: Enter the Factory Reset Command

Once you have logged in to the Unifi AP, you can enter the factory reset command. The command is as follows:

syswrapper.sh restore-default & set-default &

After you have entered the command, press “Enter” to execute it. The Unifi AP will then begin the factory reset process.

Step 4: Wait for the Factory Reset to Complete

The factory reset process may take a few minutes to complete. During this time, the Unifi AP will reboot and erase all of the configuration settings. Once the process is complete, you will be able to log in to the Unifi AP using the default login credentials.

Step 5: Reconfigure the Unifi AP

After the factory reset is complete, you will need to reconfigure the Unifi AP with your desired settings. This includes setting up your wireless network, creating new login credentials, and configuring any other settings that you require.

Selezionare l’edizione di Windows durante l’installazione

Come mai, durante l’installazione, non ci è permesso di scegliere l’edizione da installare?

Microsoft non ci permette di scegliere l’immagine ISO di installazione di Windows della versione che vogliamo ma fornisce una unica ISO che contiene tutte le edizioni disponibili.

Durante una installazione pulita il setup di Windows cerca di capire che versione dovrà installare e procederà in tal senso. Utilizza tracce delle precedenti installazioni, comprese le informazioni di licenza dell’OEM (Original Equipment Manufacturer) legate alla scheda madre (inserite nel BIOS) per determinare la licenza da installare.

Per “forzare” la scelta della versione da installare possiamo includere nel supporto di installazione un opportuno file di configurazione che forzerà la visualizzazione della schermata di selezione dell’edizione durante il Setup.

Per prima cosa dobbiamo creare un supporto USB di installazione di Windows 11 direttamente dal sito Microsoft.

A questo punto dobbiamo aprire un editor di testo (Notepad, Notepad++ o simili) e incollare questo testo:

[Channel]
_Default
[VL]
0

Dobbaimo salvare il file come “ei.cfg“.
Appena creato il file apriamo il supporto di installazione, andiamo nella cartella “Sources” e copiamo li il file appena creato.

All’avvio dell’installazione il Setup ci chiederà quale versione vogliamo installare

Disco iSCSI visibile tra i dispositivi ma non tra i datastore

Problema tra sistemi. Ho uno storage con TrueNAS che esporta verso un cluster due dischi iSCSI e una cartella NFS, utilizzati come datastore per le VM.

A causa di un problema con il disco di avvio dello storage ho dovuto reinstallare da zero TrueNAS, versione SCALE 23.10.0.1.

Nessun problema con la reimportazione dei volumi su TrueNAS, pochi aggiustamenti sui permessi e tutto pare tornato a posto.

I dischi iSCSI esportati verso il cluster, però, non sono visibili. Sono visibili i dispositivi fisici ma i datastore non vengono montati da nessun nodo.

In questo caso i dispositivi vengono erroneamente interpretati come snapshot. Possiamo montarli come datastore con il comando “esxcfg-volume -M xxxx
Verifichiamo con “esxcli storage vmfs snapshot list“:

[root@alfa:~] esxcli storage vmfs snapshot list
63d4ea88-32fcf386-7e0e-yyyyyyyyyyyy
   Volume Name: iRaid
   VMFS UUID: 63d4ea88-32fcf386-7e0e-yyyyyyyyyyyy
   Can mount: true
   Reason for un-mountability: 
   Can resignature: true
   Reason for non-resignaturability: 
   Unresolved Extent Count: 1

63d7dc50-2758fd2c-fca2-xxxxxxxxxxxx
   Volume Name: iSSD
   VMFS UUID: 63d7dc50-2758fd2c-fca2-xxxxxxxxxxxx
   Can mount: true
   Reason for un-mountability: 
   Can resignature: true
   Reason for non-resignaturability: 
   Unresolved Extent Count: 1

In effetti i due dischi vengono visti come snapshot. Forziamo il mount dei datastore:

root@alfa:~] esxcfg-volume -M "63d4ea88-32fcf386-7e0e-yyyyyyyyyyyy"
Persistently mounting volume 63d4ea88-32fcf386-7e0e-yyyyyyyyyyyy

e

[root@alfa:~] esxcfg-volume -M "63d7dc50-2758fd2c-fca2-xxxxxxxxxxxx"
Persistently mounting volume 63d7dc50-2758fd2c-fca2-xxxxxxxxxxxx

Adesso è ok

Port forwarding su Fortinet firewall

Per inoltrare il traffico TCP o UDP ricevuto dall’interfaccia esterna di un FortiGate verso un server interno dobbiamo seguire questi due passi:

  • Aggiungere un Virtual IP
  • Aggiungere una regola sul firewall

In questo esempio configuriamo l’inoltro di una porta per permettere l’accesso ad un server Windows interno con il protocollo RDP, che utilizza la porta di default 3389.

Per aggiungere un “virtual IP” che inoltra i pacchetti RDP:

1) Per FortiOS 6.0.x,6.2.x,7.0.x,7.2.x, Naviga su Policy & Objects -> Virtual IPs.
1.1) Seleziona Create New.
1.2) Aggiungi un nome per il virtual IP.
1.3) Seleziona l’interfaccia esterna. Solitamente questa è l’interfaccia che connette il Fortigate ad Internet.
1.4) Seleziona l’indirizzo ip o il range esterno. Si può utilizzare:

  • L’indirizzo IP pubblico dell’unità FortiGate.
  • Se si è connessi con un cavo o è presente una connessione DSL con ip dinamico è possibile utilizzare 0.0.0.0.
  • Se il provider (l’ISP) fornisce un blocco di IP che vengono ruotati all’interfaccia esterna del FortiGate, è possibile utilizzare qui uno di questi indirizzi IP.
    4)Imposta il “Mapped IP Address” all’indirizzo IP interno del server Windows.
    5) Seleziona Port Forwarding.
    6) Imposta il protocollo su TCP.
    7) Imposta l’External Service Port e Map to Port. In questo esempio il servizio RDP utilizza la porta 3389. Imposta entrambi (External service port e Map to Port) a 3389.
    8) Seleziona OK.

Adesso tutto quello che rimane è definire una policy sul firewall che accetta il traffico da internet e lo inoltra al server Windows interno.

Per aggiungere una regola al firewall con un virtual IP:

1) Per FortiOS 6.0, vai su Policy & Objects -> IPv4 Policy.
Per FortiOS 6.4.x,7.0.x,7.2.x, vai su Policy & Objects -> Firewall Policy.
2) Seleziona Create New.
3) Imposta Source Interface all’interfaccia WAN/Internet.
4) Imposta Source Addresses a all.
5) Imposta Destination Interface a internal.
6) Imposta Destination Address al nome del virtual IP.
7) Solitamente non è necessario modificare l’inoltro in questa policy. In questo esempio il Service può rimanere ANY, dato che il virtual IP inoltra solamente i pacchetti che utilizzano la porta 3389.
8) Seleziona OK.

Test di inoltro di un servizio, hands-on 🙂

In questo esempio la rete interna è la 192.168.34.0/24, il gateway di sistema impostato sulla SD-Wan. Mettiamo su un IP interno – 192.168.34.12 – un servizio (in questo caso un server web con nginx) che ascolta sulla porta 34567 (una porta molto a caso)

Per prima cosa creiamo gli oggetti come riferimento.

Creiamo l’host: Policy & Objects -> Addresses -> Create new

Poi creiamo il riferimento per il servizio: Policy & Objects -> Services -> Create New

Quindi il Virtual IP: Policy & Objects -> Virtual IP -> Create New
Diamo un nome all’oggetto, selezioniamo l’interfaccia sorgente (WAN1) e l’ip interno su cui mappare il servizio

Attenzione: possiamo impostare l’interfaccia fisica (WAN1) e lasciare l’ip come 0.0.0.0 oppure lasciare l’interfaccia su ANY e scegliere gli ip (ip singolo o range) su cui agire.

A questo punto creiamo la regola nella sezione Firewall: Policy & Objects -> Firewall Policy

Diamo un nome alla regola, poi scegliamo la “Incoming Interface“, che sarà l’interfaccia che connette il dispositivo a internet (solitamente la WAN1 oppure, come qui, la virtual-wan-link)
Selezioniamo come “Outgoing Interface” la rete di destinazione (la rete interna), il “Source” che in questo caso può essere “all” e la “Destination“, scegliendo il Virtual IP dagli oggetti (attenzione a scegliere il Virtual IP e non l’host); come servizio scegliamo, appunto, il servizio creato poco sopra. NAT è abilitato di default.

Unable to negotiate with x.x.x.x port 22: no matching host key type found

Nella connessione con un vecchio ESXi ricevo questo errore:

Unable to negotiate with ip.add.of.esxi port 22: no matching host key type found. Their offer: ssh-rsa,ssh-dss

Per permettere la connessione dobbiamo aggiungere un paio di parametri al comando:

ssh -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedAlgorithms=+ssh-rsa root@ip.address

ecco fatto

Installazione di Windows 11 ARM su vmWare Fusion (Mac M1)

L’installazione di Windows 11 ARM su vmWare Fusion su Mac M1 (e seguenti) si blocca, dopo la scelta della tastiera, per mancanza di rete.

Per ovviare a questo problema dobbiamo eseguire una semplice procedura per installare i tools che permettono alla macchina virtuale di accedere alla rete e terminare l’installazione

Arrivati alla prima schermata:

Premiamo i tasti Shift-fn-F10 per aprire un prompt dei comandi
Dal prompt dei comandi digitiamo:

powershell

e da qui eseguiamo:

D:
Set-ExecutionPolicy RemoteSigned
.\setup.ps1

Al termine riavviamo la macchina che, al seguente avvio, potrà effettuare l’installazione regolarmente:

shutdown /r /t 0

Fatto 🙂

Qui i riferimenti

Windows Server 2022 su vmware ESXi e patch KB5022842

L’installazione di un aggiornamento cumulativo (2023-02 Cumulative Update for Microsoft server operating system version 21H2 for x64-based Systems (KB5022842)) impedisce il corretto avvio della VM:

Riavvio dopo l’installazione della KB5022842

Al momento non ci sono soluzioni ne da parte di vmware ne da parte di Microsoft.

I consigli sono essenzialmente due: non installare la patch oppure disabilitare l’avvio sicuro.

Per disabilitare l’avvio sicuro dobbiamo andare sulle impostazioni della macchina virtuale:

Accedere alla tab “Opzioni della macchina virtuale”:

e disabilitare l’opzione “Avvio sicuro” nelle opzioni di avvio

Proxmox e swapspace (su zfs)

Il corretto dimensionamento di un server che ospita Proxmox non dovrebbe coinvolgere l’utilizzo dello spazio di swap.
Capita però che sia necessario aggiungere dello spazio di swap quando la memoria non è sufficiente e dobbiamo tamponare la situazione, in attesa di espandere la memoria principale.
Capita infatti che l’OOM uccida un processo (e se vi siete posti il problema probabilmente era una VM in funzione) prima di rendere il sistema instabile.

In questo caso possiamo aggiungere uno spazio di swap per limitare il problema.

E’ buona norma dedicare una partizione allo swap e non impasticciare su filesystem esistenti ma a volte si procede per emergenze.

In questo caso creiamo uno spazio di swap da 24GB come ZVOL:

# zfs create rpool/swapspace -V 24G

verifichiamo con:

# zpool status

e:

# zfs list
# mkswap /dev/rpool/swapspace 
# swapon /dev/rpool/swapspace
# free

Per evitare che lo spazio di swap venga utilizzato senza una vera e stringente necessità possiamo impostare il parametro “swappiness”:

# sysctl -w vm.swappiness=10

E per renderlo effettivo al riavvio aggiungiamo una linea al file “/etc/sysctl.conf”

vm.swappiness = 10

Per aggiungere lo spazio di swap al file “/etc/fstab” aggiungiamo la seguente riga:

/dev/rpool/swapspace none swap defaults 0 0

fatto