Documento completato

This commit is contained in:
Celestino Amoroso 2023-08-21 06:22:49 -04:00
parent 227b898c36
commit fb953abc9b

View File

@ -1,5 +1,8 @@
# Porte SSH
:author: C. Amoroso (celestino.amoroso@gmail.com)
## Configurazione porte SSH alterative
Per aggiungere una nuova porta al servizio SSH è necessario
Per aggiungere una nuova porta al servizio SSH di OpenSSH è necessario
* Abilitare la porta in SELinux, se è attivo.
* Aprire la porta nel firewall, se attivo.
@ -44,6 +47,21 @@ ssh_port_t tcp 2222, 22
[root@fedserv ~]# semanage port -d -t ssh_port_t -p tcp 2222
----
[TIP]
====
Le indicazioni per l'abilitazione SELinux di porte SSH alterative sono riportate anche nel file di configurazione del servizio di OpenSSH `/etc/ssh/sshd_config`:
[shell,sh]
----
# If you want to change the port on a SELinux system, you have to tell
# SELinux about this change.
# semanage port -a -t ssh_port_t -p tcp #PORTNUMBER
#
#Port 22
----
====
### Configurazione firewall
La configurazione del firewall potrebbe non essere necessaria se la zona attiva sull'interfaccia di rete considerata comprende già la porta da aprire.
@ -93,7 +111,7 @@ La zona attiva su quest'interfaccia, _FedoraWorkStation_ prevede già l'apertura
Se la zona attiva sull'interfaccia esterna non prevedesse già l'apertura della porta d'interesse, provvedere all'apertura con i seguenti comandi.
.Apertura porta firewall
[source,bash]
[source,ssh]
----
# Configurazione peristente del firewall
[root@minis ~]# firewall-cmd --permanent --service="ssh" --add-port="2222/tcp"
@ -102,3 +120,49 @@ Se la zona attiva sull'interfaccia esterna non prevedesse già l'apertura della
[root@minis ~]# firewall-cmd --reload
----
### Configurazione servizio SSH
La configurazione del servizio SSH di OpenSSH è normalmente definita nel file `/etc/ssh/sshd_config`. Il numero di porta d'ascolto per le richieste di connessione si imposta con il parametro `Port`; questo parametro può essere utilizzato più volte per attivare altrettante porte d'ascolto.
NOTE: Quando si imposta una porta diversa da quella predefinita (*22*), quest'ultima non è più attivata, a meno di aggiungere esplicitamente l'importazione `Port 22`.
A partire da OpenSSH v8.2 è possibile definire porzioni di configurazione in file dedicati che il programma _sshd_ può incorporare nella configurazione principale mediante la paraola chiave _Include_. Nel file di configurazione principale è presente la dichiarazione
[source,ssh]
====
# To modify the system-wide sshd configuration, create a *.conf file under
# /etc/ssh/sshd_config.d/ which will be automatically included below
Include /etc/ssh/sshd_config.d/*.conf
====
Quindi, piuttosto che modificare il file di configurazione principale, conviene creare un file dedicato, ad esempio `/etc/ssh/sshd_config.d/alternate_port.conf` con il seguente contenuto:
.Configurazione porta in *alternate_port.conf*
[source,ssh]
----
# Alternate listenting port
# C. Amoroso, 21/08/2023
Port 2222
----
### Configurazione systemd
Per il sistema operativo Fedora, e probabilmente per altri basati su _systemd_, è presente una specifica configurazione per il servizio _sshd_. Non mi è ancora chiaro se e quando va impostata. Probabilmente tale configurazione entra in gioco quando si utilizza il super-demone Internet di _systemd_ invece del listener di _sshd_.
Il comando per l'impostazione è il seguente.
[source,sh]
----
[root@minis ~]# systemctl edit sshd.socket
Successfully installed edited file '/etc/systemd/system/sshd.socket.d/override.conf'.
----
Nel mini-pc ho impostato la configurazione come segue:
[source,conf]
----
[root@minis ~]# cat /etc/systemd/system/sshd.socket.d/override.conf
[Socket]
ListenStream=2222
----
Ribadisco che, almendo rispetto all'uso standard di _sshd_, non rilevo differenze di comportamento agendo sulla configurazione _systemd_.