ssh "von außen" über Router

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
zahlhans
Beiträge: 56
Registriert: 06.02.2009 13:09:08

ssh "von außen" über Router

Beitrag von zahlhans » 18.02.2009 09:16:26

Morgen,

ich würde mich gerne von außen per ssh auf meinen Rechnern zu Hause anmelden. Und zwar schaut es wie folgt aus:

rechner zu hause <---> router speedport 501v <---> internet

Ich habe feste IPs vergeben. Nun müßte ich im router doch einfach Port 22 in die Portregeln eintragen und auf die IP des Rechners verweisen (oder braucht man dazu noch weitere Ports)?

Und eine weitere Frage: Wie geht man vor um einen zweiten Rechner zu Hause zu erreichen? Welche Portregeln müsste ich dann eintragen und wie entscheide ich, zu welchem Rechner ich mich verbinde?

nepos
Beiträge: 5238
Registriert: 05.01.2005 10:08:12

Re: ssh "von außen" über Router

Beitrag von nepos » 18.02.2009 09:22:06

Eigentlich isses (fast) egal, welchen Port du nach innen weiterleitest. Port 22 ist vielleicht nicht ganz optimal, da dieser ganz gerne von Scriptkiddies gescanned wird und versucht wird, das Passwort zu erraten.
Wenn du mehr als einen Rechner intern ansprechen willst, dann musst du pro Rechner einen Port nach innen weiterleiten.

goecke
Beiträge: 289
Registriert: 12.01.2007 11:57:27

Re: ssh "von außen" über Router

Beitrag von goecke » 18.02.2009 09:42:52

Aber achte auf eine Vernünftige Absicherung :

forumsuche nach :
- "allowgroups " (nur benutzer die in spezieller gruppe sind)
- "PermitRootLogin no"
- RSAAuthentication yes
- PubkeyAuthentication yes
- PermitEmptyPasswords no
- nur keys (keine Passwörter) (" PasswordAuthentication no")


und regelmäßige updates ...

HTH
Johannes

zahlhans
Beiträge: 56
Registriert: 06.02.2009 13:09:08

Re: ssh "von außen" über Router

Beitrag von zahlhans » 18.02.2009 10:51:05

Danke, auch für die Sicherheitstips.
Bis auf die Verwendung von keys hatte ich das schon so. Mit keys muß ich mich noch beschäftigen. Könnte es z.B. passieren, daß bei einem Update selbstständig neue keys erzeugt werden? Das wäre nämlich ungünstig, da unser Server weder Monitor noch Tastatur besitzt. Falls die keys aber fix sind werde ich das einrichten.

Benutzeravatar
Duff
Beiträge: 6321
Registriert: 22.03.2005 14:36:03
Wohnort: /home/duff

Re: ssh "von außen" über Router

Beitrag von Duff » 18.02.2009 10:52:34

Wie schon meine Vorredner, konfiguriere den sshd auf dem Rechner gut und wähle auf dem Router einen Port > 1024, damit du nicht nur so von Attacken (Scriptkiddies) überflutet wirst.

Du richtest dann einfach einen bestimmten Port, z.B. 22222 ein und leitest Anfragen auf diesem Port weiter zu deinem Rechner. Eventuell ist für dich dann noch wake-on-lan interessant, so dass du den Rechner nicht immer an haben müsstest, sondern ihn bei Bedarf starten würdest.

Um anschließend auf einen weiteren Rechner zugreifen zu können, kannst du entweder einen weiteren Port auf dem Router frei geben und eine Weiterleitung zum Rechner einrichten oder aber von dem anderen Rechner aus auf den 2ten Rechner zugreifen.
Oh, yeah!

nepos
Beiträge: 5238
Registriert: 05.01.2005 10:08:12

Re: ssh "von außen" über Router

Beitrag von nepos » 18.02.2009 11:31:11

zahlhans hat geschrieben:Danke, auch für die Sicherheitstips.
Bis auf die Verwendung von keys hatte ich das schon so. Mit keys muß ich mich noch beschäftigen. Könnte es z.B. passieren, daß bei einem Update selbstständig neue keys erzeugt werden? Das wäre nämlich ungünstig, da unser Server weder Monitor noch Tastatur besitzt. Falls die keys aber fix sind werde ich das einrichten.
Normal werden beim Update des sshd keine neuen Keys erzeugt. Ausnahme war glaube ich nur das Update, das wegen der verwundbaren Keys nötig war.

goecke
Beiträge: 289
Registriert: 12.01.2007 11:57:27

Re: ssh "von außen" über Router

Beitrag von goecke » 18.02.2009 11:39:49

nepos hat geschrieben:
zahlhans hat geschrieben:Danke, auch für die Sicherheitstips.
Bis auf die Verwendung von keys hatte ich das schon so. Mit keys muß ich mich noch beschäftigen. Könnte es z.B. passieren, daß bei einem Update selbstständig neue keys erzeugt werden? Das wäre nämlich ungünstig, da unser Server weder Monitor noch Tastatur besitzt. Falls die keys aber fix sind werde ich das einrichten.
Normal werden beim Update des sshd keine neuen Keys erzeugt. Ausnahme war glaube ich nur das Update, das wegen der verwundbaren Keys nötig war.
Du musst zwischen den Schlüsseln des Rechners und deinen eigenen Unterscheiden.

Solange du DEINE ssh-Keys nicht änderst kommst du immer mit diesem Schlüssel rein
(es sei denn er war wegen des Fehlers ge-Blacklistet).

Der Server behält seine Keys quasi immer (es sei den beim schon erwähnten ssh key generierungs
Fehler...).

Wenn auf dem Server der "ssh-host-key" geändert wird bekommst du eine Meldung
das ein "möglicher Man in the Middle Attack" versucht wird. Dann muß man
überprüfen, ob der neue Key korrekt ist und den alten aus der "known_hosts" löschen.

HTH

zahlhans
Beiträge: 56
Registriert: 06.02.2009 13:09:08

Re: ssh "von außen" über Router

Beitrag von zahlhans » 19.02.2009 08:37:42

Ich habe es eingerichtet und es funktioniert. Werde das nun wohl auf allen Rechnern abändern. Die wichtigen Einstellungen bzgl. keyverwendung sind "UsePAM no" und "PasswordAuthentication no" - oder sollte man noch etwas einfügen?

Aber apropos "...möglicher man in the middle attack...": Bei einer früherern Installation unseres Servers - dürfte etch gewesen sein - bekam ich mehr oder weniger bei jedem Einloggen per ssh diese Warnung, obwohl der Server damals ein reiner Intranetserver war und nur für Updates überhaupt das Netzkabel zum Router bekam. Irgendwann hat es dann plötzlich aufgehört. Naja, bei der jetzigen Installation kam das noch nicht vor.

Benutzeravatar
Duff
Beiträge: 6321
Registriert: 22.03.2005 14:36:03
Wohnort: /home/duff

Re: ssh "von außen" über Router

Beitrag von Duff » 19.02.2009 08:51:53

Am besten du postest mal die gesamte sshd_config.

Bezüglich Angriffen kann man auf dem Server noch eine entsprechende iptables Regel einrichten.
Oh, yeah!

zahlhans
Beiträge: 56
Registriert: 06.02.2009 13:09:08

Re: ssh "von außen" über Router

Beitrag von zahlhans » 19.02.2009 20:21:10

Ja, iptables ist ein anderes Thema mit dem ich mich evtl. nochmal beschäftige. Als Übergangslösung habe ich die arno-iptables-firewall installiert - sicherlich besser als willkürlich zusammengesuchte Regeln.

Ich poste mal die sshd_config - allerdings ist bis auf die beiden genannten Zeilen nichts geändert:

Code: Alles auswählen

# Package generated configuration file
# See the sshd(8) manpage for details

# What ports, IPs and protocols we listen for
Port 22
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0
Protocol 2
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
#Privilege Separation is turned on for security
UsePrivilegeSeparation yes

# Lifetime and size of ephemeral version 1 server key
KeyRegenerationInterval 3600
ServerKeyBits 768

# Logging
SyslogFacility AUTH
LogLevel INFO

# Authentication:
LoginGraceTime 600
PermitRootLogin no
StrictModes yes

RSAAuthentication yes
PubkeyAuthentication yes
#AuthorizedKeysFile	%h/.ssh/authorized_keys

# Don't read the user's ~/.rhosts and ~/.shosts files
IgnoreRhosts yes
# For this to work you will also need host keys in /etc/ssh_known_hosts
RhostsRSAAuthentication no
# similar for protocol version 2
HostbasedAuthentication no
# Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication
#IgnoreUserKnownHosts yes

# To enable empty passwords, change to yes (NOT RECOMMENDED)
PermitEmptyPasswords no

# Change to no to disable s/key passwords
#ChallengeResponseAuthentication yes

# Change to yes to enable tunnelled clear text passwords
PasswordAuthentication no


# To change Kerberos options
#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#AFSTokenPassing no
#KerberosTicketCleanup no

# Kerberos TGT Passing does only work with the AFS kaserver
#KerberosTgtPassing yes

X11Forwarding no
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
#UseLogin no

#MaxStartups 10:30:60
#Banner /etc/issue.net

Subsystem sftp /usr/lib/openssh/sftp-server

UsePAM no

Benutzeravatar
Duff
Beiträge: 6321
Registriert: 22.03.2005 14:36:03
Wohnort: /home/duff

Re: ssh "von außen" über Router

Beitrag von Duff » 20.02.2009 09:21:58

Würde noch folgendes hinzufügen:

Code: Alles auswählen

AllowGroups sshgroup
Habe bei mir dann alle User, die sich per ssh verbinden dürfen, in diese Gruppe aufgenommen.

Als Beispiel noch meine sshd_config:

Code: Alles auswählen

daniel@homer:~$ cat /etc/ssh/sshd_config |grep -v "^#"|sed -e '/^$/d'
Port 22
Protocol 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
UsePrivilegeSeparation yes
KeyRegenerationInterval 3600
ServerKeyBits 768
SyslogFacility AUTH
LogLevel INFO
LoginGraceTime 120
PermitRootLogin no
AllowGroups sshgroup
StrictModes yes
RSAAuthentication yes
PubkeyAuthentication yes
IgnoreRhosts yes
RhostsRSAAuthentication no
HostbasedAuthentication no
PermitEmptyPasswords no
ChallengeResponseAuthentication no
X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
AcceptEnv LANG LC_*
Subsystem sftp /usr/lib/openssh/sftp-server
UsePAM yes
Den Port habe ich auf 22 gelassen, da ich davor einen Router habe, der die Anfragen auf einem höheren Port entgegen nimmt an den Server auf Port 22 weiterleitet.
Oh, yeah!

highdruff
Beiträge: 14
Registriert: 30.04.2007 20:59:23
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Dausenau
Kontaktdaten:

Re: ssh "von außen" über Router

Beitrag von highdruff » 21.02.2009 23:46:40

Um evtl. Bruteforce Attacken vorzubeugen würde ich noch fail2ban empfehlen. http://linuxwiki.de/Fail2Ban

Außerdem würde ich das einloggen mit Passwörtern deaktivieren und nur Public Keys verwenden, dann gibt es erst gar kein Passwort das man angreifen kann.

Auf http://www.heise.de war mal ein Artikel mit OTP (One Time Passwords) oder kurz gesagt Einwegpasswörter.

http://www.heise.de/security/Einmalpass ... ikel/87555

Da wurde relativ gut erklärt wie man sich einen Webserver einrichtet und sich dort via Ajax (ssl gesichert) über einen beliebigen Browser mit ssh auf seinen rechner einloggen kann.
Der Vorteil hierbei ist das man auch ohne Linux bzw. Putty auf seinen Rechner kommt.
Und auch das man dieses Verfahren auch aus Internetcafes und sonstigen Öffentlichen W-Lans ohne Reue verwenden kann.
Jedes Jahr verschwinden tausende Rentner
im Internet und das nur weil Sie gleichzeitig
[Alt]+[Entf]ernen gedrueckt haben.

Antworten