Anzeichen für offene Ports in Linux
Als Systemverwalter oder Sicherheitsexperte ist es wichtig, dir der offenen Ports auf deinem Linux-System bewusst zu sein. Offene Ports können Anzeichen dafür sein, dass dein System anfällig für Angriffe von außen ist. Daher ist es entscheidend, diese Ports zu überwachen und unsichere zu schließen.
Auswirkungen offener Ports
- Sicherheitslücken: Offene Ports bieten potenziellen Angreifern einen Zugangspunkt zu deinem System und können für die Durchführung von Malware-Angriffen, Denial-of-Service-Angriffen oder Datendiebstahl genutzt werden.
- Leistungsprobleme: Unnötig offene Ports können Netzwerkressourcen verbrauchen und die Systemleistung beeinträchtigen.
- Unbefugte Zugriffe: Nicht autorisierte Benutzer könnten offene Ports ausnutzen, um auf dein System zuzugreifen und auf Dienste oder Daten zuzugreifen, auf die sie keine Berechtigung haben.
- Spam und Malware: Offene Ports können als Einfallstor für Spam-Nachrichten, Malware-Infektionen und Social-Engineering-Betrug dienen.
Anzeichen offener Ports
Es gibt mehrere Anzeichen, die auf offene Ports auf deinem Linux-System hindeuten können:
- Unerwartete Netzwerkaktivität: Anhaltende oder ungewöhnliche Netzwerkaktivität in Protokolldateien oder Überwachungswerkzeugen kann auf offene Ports hinweisen, die von bösartigen Akteuren genutzt werden.
- Warnungen von Sicherheitslösungen: Antiviren- oder Intrusion Detection Systems (IDS) können Warnungen über versuchte oder erfolgreiche Angriffe auf offene Ports ausgeben.
- Verlangsamte Systemleistung: Ein Rückgang der Systemleistung, insbesondere bei Netzwerkvorgängen, kann auf eine Überlastung offener Ports durch unerwünschten Datenverkehr hindeuten.
- Meldungen über Sicherheitsverletzungen: Du erhältst möglicherweise Benachrichtigungen von Dritten oder Sicherheitsforschern über neue Exploits oder Sicherheitslücken, die offene Ports auf deinem System betreffen.
- Bekannte Sicherheitslücken: Du solltest dich über bekannte Sicherheitslücken informieren, die offene Ports auf deinem System betreffen könnten, und diese umgehend beheben.
Befehle zum Anzeigen offener Ports
Um offene Ports in Linux anzuzeigen, stehen dir mehrere Befehle zur Verfügung. Jeder Befehl bietet unterschiedliche Informationen und eignet sich für verschiedene Anwendungsfälle.
netstat: Liste der aktiven Verbindungen
Der Befehl netstat
zeigt eine Liste aller aktiven Netzwerkverbindungen an, einschließlich TCP- und UDP-Ports. Du kannst ihn wie folgt einsetzen:
netstat -atpuen
-
-a
zeigt alle Verbindungen an, unabhängig vom Status. -
-t
zeigt nur TCP-Verbindungen an. -
-u
zeigt nur UDP-Verbindungen an. -
-p
zeigt den Prozessnamen an, der mit dem Port verbunden ist. -
-e
zeigt zusätzliche Informationen an, wie z. B. Sende- und Empfangspuffer.
ss: Sockets und offene Ports
Der Befehl ss
ähnelt netstat
, stellt jedoch detailliertere Informationen über Sockets und offene Ports bereit. Du kannst ihn wie folgt einsetzen:
ss -antpu
-
-a
zeigt alle Sockets an, unabhängig vom Status. -
-n
zeigt numerische Adressen und Portnummern an. -
-t
zeigt nur TCP-Sockets an. -
-u
zeigt nur UDP-Sockets an. -
-p
zeigt den Prozessnamen an, der mit dem Socket verbunden ist.
lsof: Liste offener Dateien und Ports
Der Befehl lsof
listet alle geöffneten Dateien und Ports auf. Dies kann nützlich sein, um festzustellen, welche Prozesse bestimmte Ports verwenden. Du kannst ihn wie folgt einsetzen:
lsof -i -P
-
-i
zeigt Informationen zu Netzwerkverbindungen an. -
-P
zeigt den Prozessnamen an, der mit dem Port verbunden ist.
netstat: Liste der aktiven Verbindungen
netstat ist ein Befehlzeilenprogramm, das Informationen zu Netzwerkverbindungen, Routing-Tabellen und Statistiken liefert.
Zeigen aktiver Verbindungen
Um eine Liste der aktiven Netzwerkverbindungen anzuzeigen, kannst du netstat mit dem Flag -a
aufrufen:
netstat -a
Dieser Befehl listet alle TCP- und UDP-Verbindungen auf, einschließlich lokaler und entfernter Adressen, Ports und Status.
Interpretation der Ausgabe
Die netstat-Ausgabe ist in Spalten unterteilt:
- Proto: Das verwendete Netzwerkprotokoll (z. B. TCP, UDP)
- Local Address: Die lokale IP-Adresse und der lokale Port
- Foreign Address: Die entfernte IP-Adresse und der entfernte Port
- State: Der Status der Verbindung (z. B. ESTABLISHED, LISTEN, CLOSE_WAIT)
Filtern von Ergebnissen
Du kannst netstat mit verschiedenen Flags filtern, um die angezeigten Ergebnisse einzugrenzen:
- -n: Numerische IP-Adressen und Ports anzeigen
- -p: Prozesse anzeigen, die die Verbindungen verwenden
- -t: Nur TCP-Verbindungen anzeigen
- -u: Nur UDP-Verbindungen anzeigen
Verwendung von netstat für die Fehlersuche
netstat kann für die Fehlersuche bei Netzwerkproblemen hilfreich sein. Du kannst es beispielsweise verwenden, um zu überprüfen, ob bestimmte Ports geöffnet sind, ob Verbindungen ordnungsgemäß hergestellt werden oder ob Prozesse bestimmte Ports blockieren.
ss: Sockets und offene Ports
Das Tool ss
(Socket Statistics) bietet eine umfassendere Ansicht offener Ports als netstat
. Es ermöglicht dir, sowohl aktive als auch lauschende Verbindungen anzuzeigen und dich nach Sockets, Ports und Prozessen zu filtern.
Verwendung von ss
Führe den folgenden Befehl aus, um alle aktiven und lauschenden Verbindungen aufzulisten:
ss -a
Du kannst die Ausgabe mit den folgenden Optionen filtern:
-
-t
: Zeigt nur TCP-Verbindungen an. -
-u
: Zeigt nur UDP-Verbindungen an. -
-p
: Zeigt die zugehörigen Prozessnamen an. -
-n
: Unterdrückt die Auflösung von IP-Adressen zu Hostnamen.
Anwendungsfälle
ss
eignet sich für die folgenden Anwendungsfälle:
- Identifizierung offener Ports, die von laufenden Prozessen verwendet werden.
- Analyse des Netzwerkverkehrs auf Socket-Ebene.
- Überwachung von Ports auf verdächtige Aktivitäten oder Angriffe.
Unterschiede zu netstat
ss
bietet im Vergleich zu netstat
mehrere Vorteile:
-
Erweiterte Filterung:
ss
ermöglicht die Filterung nach Sockets, die innetstat
nicht verfügbar ist. -
Socket-Unterstützung:
ss
zeigt sowohl TCP- als auch UDP-Sockets an, währendnetstat
nur TCP-Verbindungen auflistet. -
Prozessinformationen:
ss
zeigt den zugehörigen Prozessnamen für offene Ports an, was bei der Fehlersuche hilfreich sein kann.
lsof: Liste offener Dateien und Ports
Was ist lsof?
lsof (List of Open Files) ist ein Kommandozeilenprogramm, das Informationen zu allen geöffneten Dateien und Ports auf deinem Linux-System anzeigt. Im Gegensatz zu netstat
und ss
bietet lsof
eine detaillierte Aufschlüsselung aller geöffneten Ressourcen, einschließlich:
- Vollständiger Pfad zu geöffneten Dateien
- PID des Prozesses, der die Datei geöffnet hat
- Zugriffsmodus (Lese-, Schreib-, Ausführungsrechte)
Verwenden von lsof
Um alle geöffneten Dateien und Ports aufzulisten, gib einfach lsof
in dein Terminal ein. Du erhältst eine ausführliche Ausgabe mit folgenden Spalten:
- COMMAND: Name des Prozesses, der die Datei oder den Port geöffnet hat
- PID: Prozess-ID des Prozesses
- USER: Benutzer, der den Prozess gestartet hat
- FD: Dateideskriptor (eine eindeutige Nummer, die jedem geöffneten Objekt zugewiesen wird)
- TYPE: Typ des Objekts (reguläre Datei, Verzeichnis, Socket usw.)
- DEVICE: Gerätetreiber, der für das Objekt zuständig ist
- SIZE/OFF: Größe der Datei oder Offset im Gerät
- NODE: Zeiger auf die Struktur des Objekts im Kernel
- NAME: Pfad zur Datei oder Adresse des Ports
Filtern der Ausgabe
Du kannst die Ausgabe von lsof
filtern, um nur bestimmte Informationen anzuzeigen. Beispielsweise kannst du nach dem Port-Status (LISTEN
, ESTABLISHED
usw.) oder dem Programmnamen filtern:
-
Filtern nach Port-Status:
lsof -i :443
(zeigt alle Prozesse an, die an Port 443 lauschen) -
Filtern nach Programmname:
lsof -c sshd
(zeigt alle Dateien und Ports an, die vom SSH-Daemon verwendet werden)
Überwachung offener Ports in Echtzeit
lsof
kann auch verwendet werden, um offene Ports in Echtzeit zu überwachen. Füge dazu die Option -w
hinzu:
lsof -w | grep LISTEN
Dies zeigt eine kontinuierliche Liste aller Prozesse an, die an Ports lauschen.
Unterschiede zwischen netstat, ss und lsof
Nutzung und Zweck
netstat: Dieses Werkzeug bietet einen Überblick über aktive Netzwerkverbindungen, Routing-Tabellen und Schnittstellenstatistiken. Es ist ein weit verbreitetes und älteres Dienstprogramm zur Überwachung des Netzwerkverkehrs.
ss: (Socket Statistics) ist ein moderneres Äquivalent zu netstat, das detailliertere Informationen über Sockets und offene Ports liefert. Es wurde entwickelt, um die Einschränkungen von netstat zu überwinden und eine umfassendere Perspektive auf den Netzwerkverkehr zu bieten.
lsof: (List Open Files) konzentriert sich auf die Auflistung offener Dateien und Ports, die von Prozessen auf dem System verwendet werden. Es bietet eine detaillierte Ansicht der Ressourcenzuweisung und kann wertvolle Einblicke in die Nutzung von Netzwerkressourcen liefern.
Funktionen und Informationen
netstat:
- Zeigt aktive TCP- und UDP-Verbindungen an
- Listet Routing-Tabellen und Schnittstellenmetriken
- Informationen zu Verbindungsstatus, Protokollen und Remote-Adressen
ss:
- Liefert detaillierte Informationen zu Sockets
- Bietet statistische Daten zu Verbindungszahlen und Datenverkehr
- Erkennt Verbindungsstatus, Protokollfamilien und Sicherheitskonfigurationen
lsof:
- Listet Prozesse auf, die offene Dateien und Ports verwenden
- Zeigt Berechtigungen, Dateitypen und Verbindungsdetails
- Bietet Unterstützung für erweiterte Filter- und Sortierfunktionen
Stärken und Schwächen
netstat:
- Begrenzte Detailtiefe
- Kann bei hohen Verbindungszahlen langsam sein
- Fehlen fortgeschrittener Filteroptionen
ss:
- Umfangreichere Informationen
- Schnell und effizient
- Flexible Filter- und Sortiermöglichkeiten
lsof:
- Fokus auf Prozessressourcennutzung
- Einschränkungen bei der Anzeige von Netzwerkverbindungen
- Kann bei großen Datenmengen rechenintensiv sein
Auswahl des richtigen Tools
Die Wahl des richtigen Tools hängt von den spezifischen Informationsanforderungen ab.
- Für einen schnellen Überblick über aktive Verbindungen ist netstat geeignet.
- Für detaillierte Socket- und Verbindungsinformationen ist ss die beste Wahl.
- Zur Überwachung der Prozessressourcennutzung, einschließlich offener Ports, sollte lsof verwendet werden.
Erkennung von Ports, die von Prozessen verwendet werden
Um festzustellen, welche Prozesse bestimmte Ports verwenden, kannst du verschiedene Befehle nutzen. Dies ist hilfreich bei der Identifizierung nicht autorisierter oder ungenutzter Ports.
Prozesse mit netstat identifizieren
Der Befehl netstat -tp
listet alle aktiven TCP-Verbindungen auf, einschließlich der zugehörigen Prozess-IDs (PIDs). Durch die Verwendung der Option -p
kannst du die PID der Prozesse anzeigen, die den Port verwenden.
Prozesse mit ss identifizieren
Der Befehl ss -lpt
bietet eine ähnliche Funktionalität wie netstat
, zeigt aber zusätzlich UDP-Verbindungen an. Die Option -p
zeigt auch hier die Prozess-IDs an.
Prozesse mit lsof identifizieren
Der Befehl lsof -i :<port>
listet alle Prozesse auf, die den angegebenen Port verwenden. Dies kann nützlich sein, wenn du nicht nur die Prozess-ID, sondern auch weitere Informationen wie den Prozessnamen und die Befehlszeile benötigen.
Prozessdetails abrufen
Sobald du die PID des Prozesses kennst, kannst du weitere Details abrufen. Füge dazu einfach -p <PID>
zu jedem der oben genannten Befehle hinzu. Beispielsweise zeigt netstat -tp -p 1234
die Verbindungen an, die von dem Prozess mit der PID 1234 verwendet werden.
Anwendungsfälle
Die Erkennung von Ports, die von Prozessen verwendet werden, ist in folgenden Szenarien nützlich:
- Identifizierung von Malware oder nicht autorisierten Prozessen, die Ports verwenden
- Fehlerbehebung bei Netzwerkproblemen, die durch Konflikte zwischen Ports verursacht werden
- Überwachung von Ressourcen, um ungenutzte oder unberechtigte Ports zu finden
Filtern von Ports nach Status oder Programmname
Neben der einfachen Auflistung aller offenen Ports kannst du auch spezifischere Informationen abrufen, indem du Ports nach Status oder Programmname filterst.
Filtern nach Status
Mit dem Befehl netstat
kannst du Ports nach ihrem Status filtern. Hier sind einige gängige Optionen:
-
-a
listet alle Ports auf, unabhängig von ihrem Status. -
-l
listet nur Ports auf, die auf eingehende Verbindungen lauschen. -
-n
zeigt numerische IP-Adressen und Portnummern anstelle von Hostnamen an. -
-p
listet Prozesse auf, die Ports verwenden.
Filtern nach Programmname
Mit dem Befehl lsof
kannst du Ports nach dem Prozessnamen filtern. Das ist nützlich, um herauszufinden, welche Programme auf bestimmte Ports zugreifen.
Kombiniertes Filtern
Du kannst die Befehle netstat
und lsof
kombinieren, um Ports nach Status und Programmname zu filtern. Beispielsweise listet der folgende Befehl alle Ports auf, die vom Prozess "httpd" verwendet werden:
lsof -i -P | grep httpd
Verwendung von Filtern in Echtzeit
Die Befehle netstat
und lsof
können auch verwendet werden, um Ports in Echtzeit zu überwachen. Die folgenden Befehle führen die Ausgabe kontinuierlich aus und aktualisieren sie:
watch netstat -an
watch lsof -i
Dies ist hilfreich, um Änderungen der Portverwendung im Zeitverlauf zu verfolgen.
Überwachung offener Ports in Echtzeit
Das Überwachen offener Ports in Echtzeit ist entscheidend für die Aufrechterhaltung der Netzwerksicherheit und die Identifizierung potenzieller Bedrohungen. Linux bietet eine Reihe von Tools, mit denen du den Status deiner offenen Ports kontinuierlich überwachen kannst.
Verwendung von netstat
Mit netstat kannst du Netzwerkverbindungen und offene Ports in Echtzeit beobachten. Führe dazu den folgenden Befehl aus:
netstat -anp
Dieser Befehl zeigt eine Liste aller aktiven Verbindungen, einschließlich des lokalen und des Remote-Ports, des Verbindungsstatus und des Prozesses, der den Port verwendet.
Verwendung von ss
ss ist ein weiteres leistungsstarkes Tool zur Überwachung offener Ports. Es bietet detailliertere Informationen als netstat, einschließlich der Socket-Typen und des Zustands der Ports.
ss -anp
Mit dem Flag "-w" kannst du ss so einstellen, dass es die Ausgabe regelmäßig aktualisiert, um Änderungen in Echtzeit zu überwachen:
ss -anp -w 5
Portmonitore und Protokollanalysatoren
Neben den Befehlszeilentools kannst du auch spezialisierte Portmonitore und Protokollanalysatoren verwenden, um offene Ports in Echtzeit zu überwachen. Diese Tools bieten oft eine benutzerfreundlichere Oberfläche, erweiterte Filterfunktionen und Warnmeldungen für verdächtige Aktivitäten.
Einige beliebte Portmonitore und Protokollanalysatoren sind:
Überwachung von Ports, die von Prozessen verwendet werden
Um zu bestimmen, welche Prozesse bestimmte Ports verwenden, kannst du den Befehl lsof
verwenden:
lsof -i :PORTNUMMER
Dadurch wird eine Liste der Prozesse angezeigt, die den angegebenen Port verwenden.
Filterung und Benachrichtigungen
Die meisten Überwachungstools ermöglichen es dir, Ports nach Status oder Programmname zu filtern. Dies kann dir helfen, verdächtige Aktivitäten einzugrenzen. Wenn du eine ungewöhnliche Aktivität feststellst, kannst du Warnmeldungen einrichten, um Benachrichtigungen zu erhalten, sodass du schnell reagieren kannst.
Sicherheitsempfehlungen für offene Ports
Offene Ports bieten zwar die nötige Konnektivität, können aber auch ein Einfallstor für Angriffe sein. Hier sind einige wichtige Sicherheitsmaßnahmen, die du beachten solltest:
Vermeidung unnötiger Ports
- Schließe alle Ports, die du nicht benötigst.
- Aktiviere nur die Ports, die für deine Anwendungen und Dienste erforderlich sind.
Starke Passwörter und Authentifizierung verwenden
- Verwende immer starke Passwörter für Dienste, die offen sind.
- Aktiviere nach Möglichkeit die Zwei-Faktor-Authentifizierung.
Firewall-Schutz einrichten
- Konfiguriere eine Firewall, um den Zugriff auf offene Ports zu beschränken.
- Konfiguriere deine Firewall so, dass nur autorisierte IP-Adressen auf bestimmte Ports zugreifen können.
Regelmäßige Überwachung und Prüfung
- Überwache deine offenen Ports regelmäßig mit den aufgeführten Befehlen.
- Prüfe deine Systeme auf verdächtige Aktivitäten oder nicht autorisierte Änderungen an Portkonfigurationen.
Verwendung von Intrusion Detection and Prevention Systems (IDS/IPS)
- Überlege dir den Einsatz von IDS/IPS-Lösungen, um Angriffe auf offene Ports zu erkennen und abzuwehren.
Umgang mit ungenutzten oder nicht autorisierten Ports
- Schließe ungenutzte Ports sofort.
- Untersuche die Quelle nicht autorisierter Ports und ergreife die erforderlichen Maßnahmen, um die zugrunde liegenden Sicherheitslücken zu beheben.
Blockieren und Zulassen von Ports mit Firewalls
- Blockiere Ports, auf die nicht zugegriffen werden soll, über deine Firewall.
- Erlaube nur den Zugriff auf Ports, die für legitime Zwecke erforderlich sind.
Indem du diese Sicherheitsempfehlungen befolgst, kannst du die Risiken reduzieren, die von offenen Ports ausgehen. Denke daran, deine Portkonfigurationen regelmäßig zu überprüfen und zu aktualisieren, um dein System sicher und geschützt zu halten.
Umgang mit ungenutzten oder nicht autorisierten Ports
Sobald du offene Ports erkannt hast, ist es wichtig, mit ungenutzten oder nicht autorisierten Ports umzugehen. Dies trägt zur Verbesserung der Sicherheit deines Systems bei.
Identifizierung ungenutzter Ports
Als erstes solltest du ungenutzte Ports identifizieren. Sie können Schwachstellen für Angriffe darstellen. Führe folgende Schritte aus:
- Überprüfe selten verwendete Ports: Suche nach Ports, die Anwendungen selten verwenden.
- Überwache Port-Scans: Verwende Tools zur Überwachung eingehender Port-Scans, um potenzielle Angreifer zu erkennen.
Behandlung nicht autorisierter Ports
Nicht autorisierte Ports können ein Zeichen für eine Sicherheitsverletzung sein. So gehst du damit um:
- Schließe Ports: Schließe alle offenen Ports, die nicht für legitime Zwecke verwendet werden.
- Untersuche die Ursache: Ermittle die Ursache für nicht autorisierte Ports. Es könnte sich um eine Malware-Infektion oder eine Systemfehlkonfiguration handeln.
- Aktualisiere Software: Stelle sicher, dass deine Software auf dem neuesten Stand ist, um bekannte Sicherheitslücken zu schließen.
Verwendung von Firewalls
Firewalls sind unerlässlich, um den Zugriff auf ungenutzte oder nicht autorisierte Ports zu blockieren. So verwendest du sie:
- Konfiguriere Regeln: Richte Firewall-Regeln so ein, dass nur autorisierte Ports für den Zugriff zulässig sind.
- Verwende Port-Scan-Tools: Verwende Port-Scan-Tools, um regelmäßig nach offenen Ports zu suchen und unbefugten Zugriff zu erkennen.
- Ziehe kommerzielle Firewalls in Betracht: Für Unternehmen oder komplexe Umgebungen stehen kommerzielle Firewalls mit erweiterten Funktionen zur Verfügung, die den Schutz weiter verbessern.
Blockieren und Zulassen von Ports mit Firewalls
Um die Sicherheit zu erhöhen und unbefugten Zugriff auf dein System zu verhindern, kannst du Firewalls einsetzen, um offene Ports zu blockieren und nur den Zugriff auf autorisierte Ports zuzulassen.
Was ist eine Firewall?
Eine Firewall ist ein Sicherheitsmechanismus, der dein System vor unbefugtem Zugriff aus dem Internet oder anderen Netzwerken schützt. Sie überwacht den eingehenden und ausgehenden Netzwerkverkehr und blockiert verdächtige oder nicht autorisierte Verbindungen.
Verwendung von Firewalls zum Blockieren von Ports
Wenn du einen Port blockierst, verhinderst du, dass Verbindungen zu diesem Port hergestellt werden. Das kann nützlich sein, wenn du Ports schließen möchtest, die du nicht verwendest oder die als Sicherheitsrisiko gelten.
Anweisungen zum Blockieren von Ports unter Linux:
- Öffne ein Terminalfenster.
- Füge die folgende Regel zu deiner Firewall hinzu:
sudo ufw deny <portnummer>
Beispiel: Um Port 25 zu blockieren:
sudo ufw deny 25
Verwendung von Firewalls zum Zulassen von Ports
In einigen Fällen musst du möglicherweise bestimmte Ports öffnen, um Anwendungen und Diensten den Zugriff auf das Internet zu ermöglichen.
Anweisungen zum Zulassen von Ports unter Linux:
- Öffne ein Terminalfenster.
- Füge die folgende Regel zu deiner Firewall hinzu:
sudo ufw allow <portnummer>
Beispiel: Um Port 80 für den Webserver zuzulassen:
sudo ufw allow 80
Tools zur Verwaltung von Firewalls
Es stehen verschiedene Tools zur Verwaltung von Firewalls unter Linux zur Verfügung, darunter:
- ufw (Uncomplicated Firewall): Eine benutzerfreundliche Firewall-Anwendung, die sich für grundlegende Firewall-Aufgaben eignet.
- iptables (IPv4-Paketfilter): Ein leistungsstarkes Tool zur Konfiguration von Firewall-Regeln auf niedriger Ebene.
- firewalld (Dynamische Firewall): Eine Firewall-Verwaltungsanwendung, die eine grafische Benutzeroberfläche und ein zonenbasiertes Modell bietet.
Weitere Überlegungen
Regeln priorisieren: Wenn du mehrere Firewall-Regeln hast, musst du möglicherweise ihre Priorität festlegen, um sicherzustellen, dass die wichtigsten Regeln Vorrang haben.
Regelbeständigkeit: Überprüfe deine Firewall-Regeln regelmäßig, um sicherzustellen, dass sie noch aktuell und wirksam sind.
Verfolgung von Änderungen: Verwende Protokollierungsmechanismen, um Änderungen an deinen Firewall-Regeln zu überwachen und unbefugte Aktivitäten zu erkennen.