SSH auf anderen Port legen

volker23

Registered User
Hallo

ich habe das Login von root nur mit Schlüsseln erlaubt. Ich denke, es ist trotzdem sinnvoll, SSH auf einen anderen Port zu legen, oder? (wegen unnötiger Belastung?)
Wenn das sinnvoll ist, wie geht das?

Viele Grüße, Volker
 
Hi.

In deiner /etc/ssh/sshd_config sollte ein "Port 22" stehen. Das ändern und dann ssh restarten.
Bei manchen Distributionen muss man es erst auskommentieren.

/etc/init.d/ssh restart
 
Alle freien Ports bis ca 65.000 sind moeglich.
Nimm z.B. 2222 (oberhalb von 1024 wird oftmals empfohlen)
 
Um nochmal zu der Anfangsfrage zurück zu kehren: Macht das überhaupt bei der Verwendung von Schlüsseln Sinn?
 
Hat jemand zufälligerweise eine Ahnung wie ich SSH bei RedHat 9 (S4U vServer) neu starte ?

Unter "/etc/init.d/" gibts bei mir kein "ssh" und somit bringt "/etc/init.d/ssh restart" auch nur die Meldung "-bash: /etc/init.d/ssh: No such file or directory".

Unter "/usr/sbin/" gibts noch ein "sshd", aber der versteht kein "restart" ("Extra argument restart.").
 
volker23 said:
Um nochmal zu der Anfangsfrage zurück zu kehren: Macht das überhaupt bei der Verwendung von Schlüsseln Sinn?
Ueber den Sinn kann man streiten.

Vorteil ist, dass die meisten Brute Force Atacken ins Leere gehen.
Nachteil ist, dass man den Schluessel mitnehmen muss, wenn man mal von einem anderen Rechner aus seinen Server zu greifen will.

Die Authentifizierung mit Schluessel ist sicherer als die mit Passwort, aber unbequemer.
 
Hallöchen!

wie wäre es mit
/etc/init.d/sshd restart

rembreek said:
Unter "/etc/init.d/" gibts bei mir kein "ssh" und somit bringt "/etc/init.d/ssh restart" auch nur die Meldung "-bash: /etc/init.d/ssh: No such file or directory".
 
rembreek said:
Unter "/etc/init.d/" gibts bei mir kein "ssh" und somit bringt "/etc/init.d/ssh restart" auch nur die Meldung "-bash: /etc/init.d/ssh: No such file or directory".

Es heißt: /etc/init.d/sshd restart

Edit: Da war wohl wer schneller.
 
Oh ja, das war ein Tippfehler von mir, habs natürlich auch mit sshd probiert, aber es gibt eben weder "/etc/init.d/sshd" noch "/etc/init.d/ssh", und beides bringt nur ein "-bash: /etc/init.d/sshd: No such file or directory".

Diese Möglichkeiten hab ich bis jetzt ausprobiert (nach einigem Googlen), leider ohne Erfolg:

  • "/etc/init.d/sshd restart" -> "-bash: /etc/init.d/sshd: No such file or directory"
  • "service sshd restart" -> "sshd: unrecognized service"
  • "/sbin/service sshd restart" -> "sshd: unrecognized service"
  • "/usr/sbin/sshd restart" -> "Extra argument restart."
  • "/etc/rc.d/init.d/sshd restart" -> "-bash: /etc/rc.d/init.d/sshd: No such file or directory"

Ein "whereis sshd" bring als Ergebnis nur "sshd: /usr/sbin/sshd /usr/share/man/man8/sshd.8.gz".
 
Last edited by a moderator:
Wenn das Skript zum automatischen Starten von sshd unter /etc/init.d/sshd fehlt, müsste openssh nicht sauber installiert sein. Deswegen wird auch der ssh Server Daemon nicht initialisiert. Da kann meiner Meinung nach nur eine neue Installation von openssh helfen.

SusiG
 
Hmm ... das ist aber die Standardinstallation von RedHat 9 auf den S4Y vServern. SSH macht auch sonst keine Probleme. Ich hätte auch kein gutes Gefühl an der SSH Installation rumzubasteln ... über SSH. Das ist ein bischen wie an dem Ast rumsägen auf dem man sitzt ... :p
 
rembreek said:
Das ist ein bischen wie an dem Ast rumsägen auf dem man sitzt ... :p
Gebe ich Dir grundsätzlich recht. Aber der sshd ist in der Richtung richtig intelligent entwickelt. Du kannst z.B. per ssh "/etc/init.d/sshd stop" abschicken. Ab dann kann sich keiner mehr per SSH einloggen. Aber Deine ssh-Shell ist immer noch offen und benutzbar.

Daher vorallem mein Tip: Immer die Änderungen mit einer zweiten SSH-Instanz testen und auf der ersten eingeloggt bleiben! So sägt man sich nicht den Ast und dem Allerwertesten weg. :)

huschi.
 
Das ist richtig! ;)
Dennoch, wenn ein Neustart von sshd wirklich zwingend nötig ist, ist es von Interesse zu wissen, warum das Start-Skript /etc/init.d/sshd standardmäßig nicht dabei ist !? Vielleicht könnte ja mal einer von den S4U RH9 Besitzer bei sich checken und bei Bedarf das betreffende Skript hier posten.
 
"man sshd" könnte evtl. Aufschluß geben.
Oder man kann es auch mal suchen:
find /etc/ -name '*ssh*'

huschi.
 
Das mit bearbeiten der /etc/ssh/sshd_config klappt bei mir z.b. nicht. ;) Mein Server nutzt Keyhelp von Keyweb und da muss man die /etc/headers/sshd_config.header bearbeiten. Anschliessend muss man in Keyhelp eine Domain mit dem Domain.Editor öffnen und diese einfach erneut speichern. Dann werden die Änderungen aus der /etc/headers/sshd_config.header in die /etc/ssh/sshd_config geschrieben.

Bei mir lauscht sshd nun auch auf einem anderen Port. Ist zwar etwas gewöhnungsbedürftig und braucht auch etwas vertrauen, aber da es nun funktioniert, bleibt es nun auch so. :)
 
Huschi said:
"man sshd" könnte evtl. Aufschluß geben.
Oder man kann es auch mal suchen:
find /etc/ -name '*ssh*'

huschi.

Ah, vielen Dank Huschi, das sind in der Tat ein paar nette Ansatzpunkte. Hier ein paar Auszüge aus den man pages von sshd, die in dieser Hinsicht vielleicht interessant sein könnten:
Code:
     sshd is the daemon that listens for connections from clients.  It is nor-
     mally started at boot from /etc/rc.  It forks a new daemon for each
     incoming connection.  The forked daemons handle key exchange, encryption,
     authentication, command execution, and data exchange.  This implementa-
     tion of sshd supports both SSH protocol version 1 and 2 simultaneously.
     sshd works as follows.
[...]
     sshd rereads its configuration file when it receives a hangup signal,
     SIGHUP, by executing itself with the name it was started as, i.e.,
     /usr/sbin/sshd.
[...]
    The options are as follows:
[...]
     -i      Specifies that sshd is being run from inetd.  sshd is normally
             not run from inetd because it needs to generate the server key
             before it can respond to the client, and this may take tens of
             seconds.  Clients would have to wait too long if the key was
             regenerated every time.  However, with small key sizes (e.g.,
             512) using sshd from inetd may be feasible.
ps -ax zeigt, daß sshd mit der option -i gestartet wurde:
Code:
10107 ?        S      0:00 sshd -i
Das ist dann wohl eher ungewöhnlich nehme ich an ...


find /etc/ -name '*ssh*' bring folgendes Ergebnis:
/etc/pam.d/sshd
/etc/rc.d/init.d/sshd-keygen
/etc/rc.d/rc0.d/K25sshd-keygen
/etc/rc.d/rc1.d/K25sshd-keygen
/etc/rc.d/rc2.d/S55sshd-keygen
/etc/rc.d/rc3.d/S55sshd-keygen
/etc/rc.d/rc4.d/S55sshd-keygen
/etc/rc.d/rc5.d/S55sshd-keygen
/etc/rc.d/rc6.d/K25sshd-keygen
/etc/ssh
/etc/ssh/ssh_config
/etc/ssh/ssh_host_dsa_key
/etc/ssh/ssh_host_dsa_key.pub
/etc/ssh/ssh_host_key
/etc/ssh/ssh_host_key.pub
/etc/ssh/ssh_host_rsa_key
/etc/ssh/ssh_host_rsa_key.pub
/etc/ssh/sshd_config
/etc/xinetd.d/sshd
"/etc/pam.d/sshd restart" und "/etc/xinetd.d/sshd restart" erzeugen leider beide nur "Permission denied" (als root ausgeführt).
 
Back
Top