Accedi
Accedi

Come aprire una porta su Linux

Come aprire una porta su Linux
Awais Khan
Redattore tecnico
Sistema: Linux
29.10.2025
Reading time: 5 min

Aprire le porte in Linux è un’operazione fondamentale che consente a determinati servizi o applicazioni di scambiare dati sulla rete.

Le porte agiscono come canali di comunicazione, permettendo l’accesso ai servizi autorizzati e bloccando quelli non autorizzati. La loro corretta gestione garantisce sicurezza, buone prestazioni e funzionamento stabile delle applicazioni.

Comprendere le porte e la loro funzione

Le porte sono gli endpoint logici della comunicazione di rete, attraverso i quali i dispositivi inviano e ricevono informazioni.

Esempi comuni:

  • HTTP → Porta 80

  • HTTPS → Porta 443

  • SSH → Porta 22

Una porta aperta indica che un servizio è in ascolto e accetta connessioni in ingresso. Una porta chiusa, invece, blocca la comunicazione. Per garantire sicurezza e disponibilità dei servizi, è fondamentale gestire correttamente le porte aperte su Linux.

Verificare le porte aperte su Linux

Prima di aprire una nuova porta, conviene controllare quali porte sono già attive. Puoi farlo con diversi comandi Linux.

Con netstat

Per mostrare le porte aperte, esegui:

netstat -tuln
  • L’opzione -tuln limita l’output alle porte TCP e UDP, senza risolvere i nomi host.

  • netstat offre una panoramica in tempo reale delle connessioni attive.

Image1

Nota: se netstat non è installato:

sudo apt install net-tools

Con ss

Il comando ss è una versione più moderna e veloce di netstat:

ss -tuln

Image3

Mostra le porte attualmente in uso e le relative informazioni sui socket.

Con nmap

Per un’analisi più approfondita:

nmap localhost

nmap esegue una scansione dell’host specificato (in questo caso localhost) per individuare le porte aperte — utile per capire quali servizi sono esposti alla rete pubblica.

Image2

Nota: installa nmap con:

sudo apt install nmap

Aprire porte su Linux

Per consentire l’accesso attraverso una porta specifica, occorre modificare le regole del firewall. Linux offre vari strumenti: iptables, ufw e firewalld.

Ecco come utilizzarli.

Metodo 1: con iptables

iptables è un potente strumento a basso livello che offre un controllo preciso sul traffico di rete.

Aggiungere una regola per una porta specifica

Esempio: aprire la porta 8080 per traffico HTTP:

sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT

Spiegazione:

  • sudo: esegue il comando come amministratore

  • -A INPUT: aggiunge la regola alla catena di input (traffico in ingresso)

  • -p tcp: si applica al protocollo TCP

  • --dport 8080: specifica la porta 8080

  • -j ACCEPT: accetta il traffico corrispondente alla regola

Queste modifiche non sono permanenti: dopo il riavvio del sistema, le regole vengono cancellate.

Image5

Salvare la configurazione

Per rendere le regole permanenti:

sudo apt install iptables iptables-persistent
sudo netfilter-persistent save

Image4

Le regole vengono così memorizzate e ricaricate automaticamente a ogni riavvio.

Ricaricare le modifiche

sudo netfilter-persistent reload

Image7

Metodo 2: con ufw (Uncomplicated Firewall)

ufw è un’interfaccia semplificata per iptables che permette di gestire facilmente le regole del firewall.

Abilitare ufw

sudo ufw enable

Image6

Se non è installato:

sudo apt install ufw

Aprire una porta specifica

Esempio: consentire connessioni SSH sulla porta 22:

sudo ufw allow 22/tcp

Questo comando autorizza il traffico TCP in ingresso sulla porta 22.

Image9

Verificare lo stato del firewall

sudo ufw status

Mostra tutte le regole attive e le porte aperte.

Image8

Metodo 3: con firewalld

firewalld è un demone firewall dinamico che semplifica la gestione delle regole.

Aggiungere una regola permanente

Esempio: aprire la porta 443 (HTTPS):

sudo firewall-cmd --permanent --add-port=443/tcp

Image12

Installazione e avvio di firewalld:

sudo apt install firewalld
sudo systemctl enable firewalld
sudo systemctl start firewalld

Ricaricare le regole

sudo firewall-cmd --reload

Image10

Verificare che la porta sia aperta

sudo firewall-cmd --list-all

Visualizza tutte le zone e le regole attive, incluse le porte aperte.

Image11

Testare la porta aperta

Dopo aver aperto una porta, assicurati che sia effettivamente accessibile.

Con telnet

telnet localhost port_number

Se la connessione va a buon fine, la porta è aperta e operativa.

Image13

Con nmap

nmap -p port_number localhost

Scansiona il port specificato per verificarne la disponibilità.

Image14

Con curl

curl localhost:port_number

Una risposta positiva indica che il servizio è attivo sulla porta aperta.

Image15

Risoluzione dei problemi comuni

Se l’apertura di una porta non funziona:

Controlla le regole del firewall

  • iptables -L
  • ufw status

Verifica lo stato del servizio

  • systemctl status <nome_servizio>

Aprire porte in base al protocollo

A seconda del servizio, può essere richiesto TCP o UDP.

Porta TCP

Esempio: consentire il traffico MySQL sulla porta 3306:

sudo ufw allow 3306/tcp

Image16

Porta UDP

Esempio: aprire la porta 161 per SNMP:

sudo ufw allow 161/udp

Image17

Gestire l’accessibilità delle porte

Limitare l’accesso a un indirizzo IP specifico

sudo ufw allow from 192.168.1.100 to any port 22

Permette l’accesso SSH solo da quell’indirizzo IP, migliorando la sicurezza.

Image18

Chiudere una porta

sudo ufw deny 80/tcpBlocca il traffico in ingresso sulla porta 80 (HTTP).

Image19

Conclusione

Verificare e aprire le porte in Linux è essenziale per garantire il corretto funzionamento della rete e la sicurezza dei servizi. Con strumenti come iptables, ufw e firewalld puoi controllare il traffico in modo preciso e sicuro. Effettua sempre test con nmap, curl o telnet per assicurarti che le configurazioni siano corrette. Una buona gestione delle porte è la base per server affidabili, connessioni sicure e prestazioni ottimali.

Sistema: Linux
29.10.2025
Reading time: 5 min

Simili

Sistema: Linux

Come Installare e Usare ripgrep: Guida per Ricerche Efficienti

Introduzione a ripgrep (rg) ripgrep (spesso abbreviato in rg) è uno strumento moderno, veloce e potente da riga di comando che consente di cercare ricorsivamente nei file, in modo simile a grep, ma con maggiore efficienza e funzionalità aggiuntive. È progettato per esplorare repository di codice ignorando automaticamente file e directory specificati in .gitignore o file di configurazione simili. Questo rende ripgrep estremamente efficace per gli sviluppatori che lavorano su grandi codebase. Questo tutorial copre: Installazione di ripgrep su Linux Sintassi di base e comandi principali Casi d’uso comuni ed esempi Funzionalità avanzate Confronto con grep e altri strumenti Risoluzione dei problemi e best practice Alla fine, avrai una solida comprensione di come usare ripgrep in modo efficace. Installare ripgrep su Linux L’installazione di ripgrep è semplice sulla maggior parte delle distribuzioni Linux. Puoi installarlo tramite il gestore di pacchetti o scaricando il binario. Installazione su Ubuntu Aggiorna l’elenco dei pacchetti: sudo apt update Installa ripgrep: sudo apt install ripgrep fzf Sintassi di base e comandi di ripgrep La sintassi è simile a grep, ma ripgrep offre prestazioni migliori e funzionalità più avanzate già pronte all’uso. Sintassi di base rg [OPZIONI] PATTERN [PERCORSO] Dove: PATTERN è la stringa o espressione regolare da cercare. [PERCORSO] è opzionale e indica la directory o il file in cui cercare. Se omesso, ripgrep cerca nella directory corrente. Esempio: ricerca per estensione file Per cercare solo nei file .py: rg "function" *.py Ricerca ricorsiva per tipo di file Usando direttamente *.py la ricerca non è ricorsiva. Per cercare in tutte le sottodirectory filtrando per tipo: rg --type py "function" Ricerca con espressioni regolari ripgrep supporta le regex: rg '\d{4}-\d{2}-\d{2}' Questo cerca date nel formato YYYY-MM-DD. Casi d’uso comuni Ricerca senza distinzione tra maiuscole e minuscole rg -i "error" Trova error, Error o ERROR. Ricerca per tipo di file rg --type py "import" Escludere directory Ad esempio node_modules: rg "config" --glob '!node_modules/*' Ricerca in file compressi ripgrep può cercare nei file compressi senza estrarli prima (.gzip, .xz, .lz4, .bzip2, .lzma, .zstd). Esempio: rg 'ERST' -z demo.gz Funzionalità avanzate ripgrep consente di visualizzare il contesto attorno alle righe corrispondenti. Contesto prima e dopo -B [numero] → righe prima -A [numero] → righe dopo rg "EXT4-fs \(sda3\)" /var/log/syslog.demo -B 1 -A 2 Contesto combinato rg "EXT4-fs \(sda3\)" /var/log/syslog -C 1 -B 1 -A 2 offre maggiore controllo -C 2 mostra lo stesso numero di righe prima e dopo Confronto con altri strumenti ripgrep vs grep ripgrep è più veloce, soprattutto su grandi progetti ignora automaticamente .gitignore grep è più diffuso ma con meno funzionalità integrate ripgrep vs ag (The Silver Searcher) entrambi ottimizzati per codebase ripgrep è generalmente più rapido e gestisce meglio glob e regex Risoluzione dei problemi e best practice Gestione dei file di grandi dimensioni rg "search-term" --max-filesize 10M Limita la ricerca ai file sotto i 10 MB. Escludere globalmente alcuni tipi di file Crea ~/.ripgreprc: --glob '!*.log' --glob '!*.tmp' Questo escluderà .log e .tmp da tutte le ricerche. Verificare la versione rg --version Conclusione Questo tutorial ha coperto l’installazione di ripgrep, i comandi di base, le funzionalità avanzate e il confronto con altri strumenti. Grazie alla sua velocità ed efficienza, ripgrep è una scelta eccellente per gli sviluppatori che vogliono migliorare le capacità di ricerca in grandi codebase.
04 February 2026 · 3 min to read
Sistema: Linux

Come comprimere file in Linux usando il comando tar

Il comando tar serve fondamentalmente a riunire file e directory in un unico archivio senza modificarne la struttura. Questo approccio semplifica l’organizzazione, la creazione di backup e il trasferimento dei file. Una volta creati, questi archivi possono essere compressi utilizzando diversi metodi come gzip, bzip2 o xz, che aiutano a ottimizzare lo spazio di archiviazione e a migliorare le velocità di trasferimento. Le distribuzioni Linux moderne sui server Linux VPS includono versioni aggiornate di tar, consentendo un’integrazione fluida con strumenti di compressione come gzip per una gestione dei dati più efficiente. Questo rende tar una risorsa preziosa per gli utenti che gestiscono grandi set di dati, poiché supporta sia la consolidazione dei file sia la compressione in un unico comando. Grazie alla sua flessibilità, tar è ampiamente utilizzato in diversi ambienti Linux. Non solo facilita la creazione di backup, ma semplifica anche la distribuzione del software e la gestione dei dati importanti. Con una vasta gamma di opzioni disponibili, gli utenti possono personalizzare gli archivi in base alle proprie esigenze, ad esempio escludendo directory o file specifici, preservando i permessi o proteggendo i dati sensibili. Per chiunque lavori con grandi quantità di informazioni o requisiti di archiviazione complessi, imparare a fondo il comando tar è fondamentale. Tutto ciò lo rende un’utilità importante da conoscere per gli utenti Linux. E se stai cercando una soluzione affidabile, ad alte prestazioni e conveniente per i tuoi flussi di lavoro, Hostman offre opzioni di Linux VPS Hosting, tra cui Debian VPS, Ubuntu VPS e VPS CentOS. Comprendere la sintassi di tar Il comando tar è fondamentalmente suddiviso in quattro parti distinte: tar -flags: Opzioni utilizzate per eseguire un’azione specifica Nome dell’archivio Percorso del file o della directory desiderata Si scrive come segue: tar -flags (nome_archivio) (percorso) Archiviare file e directory tar utilizzato con l’opzione -cvf consente di archiviare file e directory. Per un file: tar -cvf collectionX.tar snake.txt Per una directory: tar -cvf DRcollection.tar newDir/ Questo archivierà il file snake.txt in collectionX.tar e la directory newDir in DRcollection.tar. Se l’obiettivo è archiviare più file e directory, utilizza i seguenti comandi. Per più file: tar -cvf collectionX.tar snake.txt panther.txt Tiger.txt Per più directory: tar -cvf DRcollection.tar newDir1/ newDir2/ newDir3/ Comprimere file e directory tar utilizzato con l’opzione -czvf consente di comprimere file e directory. Per un file: tar -czvf collectionX.tar.gz snake.txt Per una directory:  tar -czvf DRcollection.tar.gz newDir/ -c archivia file e directory -z applica la compressione gzip -v è la modalità dettagliata e mostra il processo di compressione -f consente di assegnare un nome all’archivio da comprimere Aggiungi .gz dopo tar se desideri comprimere file e directory. Per più file: tar -cvf collectionX.tar.gz snake.txt panther.txt Tiger.txt Per più directory: tar -cvf DRcollection.tar.gz newDir1/ newDir2/ newDir3/ .bz2 viene utilizzato con tar e, insieme all’opzione -cjf, consente di archiviare e comprimere file e directory. -j applica la compressione bzip2. Per un file con bz2: tar -cjf collectionX.tar.bz2 snake.txt Per una directory con bz2: tar -cjf DRcollection.tar.bz2 newDir/ .xz viene utilizzato con .tar e, insieme all’opzione -cJf, consente di archiviare e comprimere file e directory. -J indica la compressione con xz. Per un file con xz: tar -cJf DRcollection.tar.xz file1.txt Per una directory con xz: tar -cJf collectionX.tar.xz newDir/ Estrarre file .tar compressi arch1.tar.gz, arch1.tar.bz2 e arch1.tar.xz sono tre file compressi. Estrarre .tar.gz: tar -xvzf arch1.tar.gz -x indica l’estrazione dei file. Estrarre tar.bz2: tar -xvjf arch1.tar.bz2 Estrarre tar.xz: tar -xvJf arch1.tar.xz Estrarre file specifici usando caratteri jolly Se devi estrarre solo un tipo specifico di file da un archivio, procedi come segue: tar -xvf arch1.tar --wildcards '*.sh' Questo restituirà solo i file con estensione .sh. --wildcards aiuta a cercare tipi di file specifici e consente la corrispondenza dei pattern. *.sh garantisce che vengano estratti solo file di tipo .sh. Estrarre in una directory specifica Se devi estrarre l’archivio completo in una directory specifica, procedi come segue: tar -xvf arch1.tar -C ./destinationDir/pathDir/ -C cambia nella directory specificata. -xvf consente di estrarre l’archivio in quella posizione. Gestire archivi .tar Controllare il contenuto senza estrarre Se desideri sapere cosa contiene un archivio senza decomprimere i file, utilizza comandi come questi: tar -tzf arch1.tar.gztar -tjf arch1.tar.bz2tar -tJf arch1.tar.xz -t fornisce dettagli sul contenuto degli archivi compressi senza eseguire l’estrazione. Aggiungere file a un archivio esistente Per aggiungere un nuovo file a un archivio: tar -rvf arch1.tar new.sh new.sh verrà aggiunto a arch1.tar. Rimuovere un file specifico da un archivio Se devi eliminare un file da un archivio senza estrarlo, puoi utilizzare --delete. tar --delete -f arch1.tar new.sh  Questo rimuoverà il file new.sh dall’archivio arch1.tar senza estrarlo. Tieni presente che --delete non funziona con file compressi, ma solo con archivi. Confrontare il contenuto dell’archivio con la directory corrente Se devi esaminare il contenuto della directory di lavoro corrente e confrontarlo con l’archivio, utilizza: tar --diff -f arch1.tar --diff aiuta a confrontare il contenuto di arch1.tar con quello disponibile nella directory di lavoro corrente. Risolvere errori comuni di .tar "tar: Removing leading '/' from member names" Questo avviso appare quando vengono utilizzati percorsi assoluti in un archivio: tar -cvf arch1.tar /home/user/file.txt Soluzione: Usa -p per preservare i percorsi assoluti. tar -cvpf arch1.tar /home/user/file.txt "tar: Error opening archive: Unrecognized archive format" Questo errore si verifica quando l’archivio è danneggiato o viene utilizzato il comando di decompressione errato. Soluzione: Verifica il tipo di file: file arch1.tar.gz Utilizza il comando di decompressione corretto: tar -xvzf arch1.tar.gz  # For .tar.gztar -xvjf arch1.tar.bz2  # For .tar.bz2tar -xvJf arch1.tar.xz   # For .tar.xz Se si sospetta una corruzione, verifica l’integrità: gzip -t arch1.tar.gzbzip2 -tv arch1.tar.bz2 Conclusione L’utilità tar rappresenta uno strumento importante per l’archiviazione, la compressione e l’estrazione. Offre efficienza, rendendola un componente cruciale della gestione dello storage in Linux. Con una varietà di configurazioni e impostazioni, tar funge da soluzione sempre valida per diversi scenari di utilizzo. Opzioni come -czvf e -xvzf determinano il modo in cui i file vengono archiviati e recuperati, garantendo agli utenti il pieno controllo sulla compressione dei dati. Inoltre, tar supporta diversi strumenti di compressione come gzip, bzip2 e xz, consentendo agli utenti di ottimizzare sia la velocità sia il rapporto di compressione in base alle proprie esigenze specifiche. Per professionisti IT, sviluppatori e utenti Linux, conoscere a fondo tar è estremamente prezioso. Che si tratti di gestire backup, distribuire dati in modo efficiente o ottimizzare lo storage, tar rimane uno degli strumenti di archiviazione più influenti. Selezionando le configurazioni e i comandi corretti, gli utenti possono migliorare significativamente il proprio flusso di lavoro, automatizzare le attività e gestire grandi set di dati in modo efficiente. Puoi anche utilizzare il nostro storage compatibile con S3 per salvare tutti i dati necessari per le tue applicazioni e i tuoi server.
28 January 2026 · 7 min to read
Sistema: Linux

Creazione di collegamenti simbolici in Linux: un tutorial passo dopo passo

I symlink, noti anche come collegamenti simbolici, sono simili ai collegamenti rapidi nel mondo Linux. Consentono di creare un nuovo nome (o collegamento) che punta a un altro file, una directory o qualsiasi oggetto all’interno del file system. Il loro principale vantaggio consiste nel ridurre la ridondanza, evitando la necessità di avere più copie dello stesso file. Quando si utilizza un symlink, le modifiche apportate al file originale si riflettono automaticamente su tutti i suoi collegamenti simbolici. Questo elimina la necessità di aggiornare manualmente più copie. Inoltre, i symlink offrono un modo flessibile per gestire le autorizzazioni di accesso. Ad esempio, diversi utenti con directory che puntano a sottoinsiemi di file possono limitare la visibilità oltre quanto consentito dalle autorizzazioni standard del file system. In sostanza, i symlink sono indispensabili per un’efficiente gestione e organizzazione dei file, semplificando gli aggiornamenti e il controllo degli accessi in sistemi complessi. Requisiti Per seguire questo tutorial, avrai bisogno di: Un server cloud, una macchina virtuale o un computer con un sistema operativo Linux. Su Hostman puoi distribuire un server con Ubuntu, CentOS o Debian in meno di un minuto. Creazione di collegamenti simbolici con il comando ln Il comando ln viene utilizzato per creare collegamenti simbolici in Linux. Segui questi passaggi: Apri una finestra del terminale. Vai nella directory in cui desideri creare il collegamento simbolico. Utilizza la seguente sintassi per creare un symlink: ln -s /path/to/source /path/to/symlink Sostituisci /path/to/source con il percorso reale del file o della directory da collegare e /path/to/symlink con il nome o la posizione desiderata del collegamento simbolico. Comprendere le opzioni del comando ln Il comando ln offre varie opzioni per personalizzare la creazione dei symlink:  -s: Crea un collegamento simbolico.  -f: Sovrascrive un symlink esistente.  -n: Considera le destinazioni del symlink come file normali. Esplora queste opzioni in base alle tue esigenze di collegamento. Creazione di collegamenti simbolici a file Per creare un symlink a un file, utilizza il comando ln con l’opzione -s. Ecco un esempio di come creare un collegamento simbolico a un file usando il comando ln. Il seguente comando crea un collegamento simbolico chiamato symlink_file nella directory corrente, puntando al file /path/to/file: ln -s /path/to/file /path/to/symlink_file Sostituisci /path/to/file con il percorso reale del file e /path/to/symlink_file con il nome desiderato del symlink. In questo esempio, il percorso del file è assoluto. È anche possibile creare un collegamento simbolico utilizzando un percorso relativo. Tuttavia, tieni presente che per far funzionare correttamente il symlink, qualsiasi processo che vi accede deve prima impostare la directory di lavoro corretta; in caso contrario, il collegamento potrebbe risultare non funzionante. Creazione di collegamenti simbolici a directory Puoi utilizzare il comando ln per creare un collegamento simbolico che punti a una directory. Ad esempio, il seguente comando crea un collegamento simbolico chiamato symlink_directory nella directory corrente, che punta alla directory /path/to/directory: ln -s /path/to/directory /path/to/symlink_directory Questo comando crea un collegamento simbolico chiamato symlink_directory nella tua posizione attuale, collegandolo alla directory /path/to/directory. Sovrascrivere forzatamente un collegamento simbolico Puoi utilizzare l’opzione -f con il comando ln. Ad esempio, se il percorso in un symlink è errato a causa di un errore di digitazione o se la destinazione è stata spostata, puoi aggiornare il collegamento in questo modo: ln -sf /path/to/new-reference-dir symlink_directory L’uso dell’opzione -f garantisce che il contenuto del vecchio symlink venga sostituito dalla nuova destinazione. Rimuove inoltre automaticamente eventuali file o symlink in conflitto. Se provi a creare un symlink senza l’opzione -f e il nome del symlink è già in uso, il comando non verrà eseguito. Verifica dei collegamenti simbolici Puoi visualizzare il contenuto di un symlink utilizzando il comando ls -l in Linux: ls -l symlink_directory L’output mostrerà il symlink e la sua destinazione: symlink_file -> /path/to/reference_file Qui, symlink_file è il nome del collegamento simbolico e punta al file /path/to/reference_file. ls -l /path/to/symlink L’output mostrerà il symlink e la sua destinazione. Buone pratiche per i collegamenti simbolici Usa nomi descrittivi per i collegamenti simbolici. Evita collegamenti circolari per prevenire malfunzionamenti del sistema. Aggiorna i symlink se cambia la posizione della destinazione. Casi d’uso dei collegamenti simbolici Gestione dei file di configurazione: Collegare file di configurazione tra sistemi. Controllo versione: Collegare simbolicamente librerie comuni per progetti di sviluppo. Backup dei dati: Creare symlink verso directory di backup. Problemi potenziali e risoluzione degli errori Problemi di autorizzazioni: Assicurati che le autorizzazioni appropriate siano impostate per la sorgente e il symlink. Collegamenti interrotti: Aggiorna i symlink se i file di destinazione vengono spostati o eliminati. Collegamenti tra filesystem: I symlink potrebbero non funzionare tra filesystem diversi. Conclusione I symlink sono preziosi per ottimizzare la gestione dei file e la manutenzione del sistema. Semplificano gli aggiornamenti tra più applicazioni che condividono un file comune, riducendo la complessità della manutenzione. Offrono inoltre un’alternativa a directory come /etc, che spesso richiedono accesso root per modificare i file. Gli sviluppatori trovano i symlink utili per passare senza problemi tra file di test locali e versioni di produzione. Seguendo questo tutorial, hai imparato a creare collegamenti simbolici in Linux. Sfrutta i symlink per una gestione efficiente dei file e una maggiore personalizzazione.
15 December 2025 · 5 min to read

Hai domande,
commenti o dubbi?

I nostri professionisti sono disponibili per assisterti in ogni momento,
che tu abbia bisogno di aiuto o non sappia da dove iniziare.
Inviaci un'email
Hostman's Support