Zugriff via SSH oder Telnet mit non-root user

Status
Für weitere Antworten geschlossen.

cccc

Benutzer
Mitglied seit
30. Mai 2007
Beiträge
142
Punkte für Reaktionen
0
Punkte
0
Hallo

Warum kann ich nicht auf meine DS209+ II box mit einem non-root user via SSH oder Telnet zugreifen?
Wenn es geht, arbeite nicht so gerne als root.
Wie kann ich ändern?
 
Zuletzt bearbeitet:

thedude

Benutzer
Mitglied seit
30. Nov 2009
Beiträge
2.244
Punkte für Reaktionen
2
Punkte
84
Ja kann man. In /etc/passwd musst Du in der Zeile des gewünschten Users am Ende das /sbin/nologin gegen eine shell, z.B. /bin/sh tauschen. Dann kannst Du dich einloggen. Bitte vorsichtig in der Datei. Wenn die putt ist, ist Ende mit mit einloggen. ;)

gruss
dude
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Gibt es irgendeinen Anwendungsfall, sich mit einem anderen User per telnet/ssh anzumelden? Würde mich mal interessieren.

Itari
 

cccc

Benutzer
Mitglied seit
30. Mai 2007
Beiträge
142
Punkte für Reaktionen
0
Punkte
0
Gibt es irgendeinen Anwendungsfall, sich mit einem anderen User per telnet/ssh anzumelden? Würde mich mal interessieren.

Itari

Es gibt etliche Beiträge im Internet zum Thema "niemals als root", wie z.B:

"Du solltest niemals als root arbeiten.
Richte einen User ein, falls du das noch nicht gemacht hast, und log dich als diesen ein.
Dort kannst du dann via dem Konsolebefehl 'su xxx' als root agieren.
xxx steht für den Befehl, den du als root ausführen möchtest."


Hast Du nie davon gehört, dann gib mal bitte in google "niemals als root".

gruss
 

thedude

Benutzer
Mitglied seit
30. Nov 2009
Beiträge
2.244
Punkte für Reaktionen
2
Punkte
84
Ist alles richtig. Auch löblich, dass Du dich daran halten willst. Und jetzt kommt das "aber":

Das ist aber auf normale Workstations gemünzt - an denen man auch "normal" arbeiten kann. Auf einem Server (und die DS ist nichts anderes) kannst Du ohne root rechte sogut wie nichts machen, da jegliche administrative Arbeit meist sowieso root Rechte erfordert. Und wenn die Box einmal läuft, fuscht man ja auch nich ständig dran rum. Sprich "normales" arbeiten gibt es nicht an der DS.

Du kannst dich also als non root maximal umsehen. Und wenn Du was machen willst musst Du root werden (mit su z.B.). Klar ist es als root "gefährlicher" - vorallem wenn man keine Linux (und CLI-) Erfahrung hat. Aber wenn man ein Backup hat und vorallem weiss was man tut - eigentlich kein Problem.

gruss
dude
 
Zuletzt bearbeitet:

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Es gibt etliche Beiträge im Internet zum Thema "niemals als root", wie z.B:

"Du solltest niemals als root arbeiten.
Richte einen User ein, falls du das noch nicht gemacht hast, und log dich als diesen ein.
Dort kannst du dann via dem Konsolebefehl 'su xxx' als root agieren.
xxx steht für den Befehl, den du als root ausführen möchtest."


Hast Du nie davon gehört, dann gib mal bitte in google "niemals als root"

Und dir ist auch klar, dass Google nicht immer die Wahrheit ist?

Itari
 

5n00py

Benutzer
Mitglied seit
31. Aug 2009
Beiträge
257
Punkte für Reaktionen
0
Punkte
16
Das Thema interessiert mich doch auch durchaus, ich bewege mich gerne von
außerhalb im heimnetzwerk per SSH Tunnel und nem Proxy auf der DS.
Dadurch brauch ich den 5000er nicht aufmachen ;)
Für mich währe nun interessant wie ich einen anderen SSH Nutzer anlege.

Wichtig währe mir auch noch zu wissen über was für einen port ich als eingangsport am router nehmen sollte und dann auf port 22 forwarde.
Kann ich da jeden beliebigen nehmen?
 

thedude

Benutzer
Mitglied seit
30. Nov 2009
Beiträge
2.244
Punkte für Reaktionen
2
Punkte
84
Für mich währe nun interessant wie ich einen anderen SSH Nutzer anlege.

Das musst du nicht extra. Das sind die gleichen User wie für die Shares. Wie du die für SSH "freischaltest", siehe hier im Fred meinen Post (2. von oben).

Wichtig währe mir auch noch zu wissen über was für einen port ich als eingangsport am router nehmen sollte und dann auf port 22 forwarde.
Kann ich da jeden beliebigen nehmen?

Im Prinzip wurscht. Würde was beliebiges zwischen 40000 und 55000 oder so nehmen...

gruss
dude
 

5n00py

Benutzer
Mitglied seit
31. Aug 2009
Beiträge
257
Punkte für Reaktionen
0
Punkte
16
Achso ok, danke.

Hab nun einen weiteren Systembenutzer angelegt, nun sieht das so aus:

Ich logge mich am entfernten notebook über einen mit Putty erstellten SSH Tunnel auf der DS ein.
Durch den Proxyserver der auf der DS installiert ist kann ich mich nun im Browser ganz normal im Heimnetz bewegen und auf alle
Benutzeroberflächen (Router / DS / usw.) zugreifen ohne weiter Ports für jede einzelne Oberfläche frei zu geben.

Als besondere Sicherungsvorkehrungen:
- Login über angelegten Systembenutzer (nicht root)
- Portforwarding von einem port zwischen 40000 und 55000 auf den SSH Port 22 über den Router
- Freie Bewegung im lokalen Netz über den verschlüsselten SSH Tunnel


Ich bin nun ganz zufrieden eigentlich, aber wie viel sicherer ist das denn nun als wenn man einfach Port 5000 für die DS Port 443 für den Router. etc. nimmt?
 
Zuletzt bearbeitet:

cccc

Benutzer
Mitglied seit
30. Mai 2007
Beiträge
142
Punkte für Reaktionen
0
Punkte
0
Ich bin nun ganz zufrieden eigentlich, aber wie viel sicherer ist das denn nun als wenn man einfach Port 5000 für die DS Port 443 für den Router. etc. nimmt?

Siecherer von was?
Zeichne am besten das Schema was Du genau machen bzw. wie Du Dir das vorstellst.
 

thedude

Benutzer
Mitglied seit
30. Nov 2009
Beiträge
2.244
Punkte für Reaktionen
2
Punkte
84
Ich bin nun ganz zufrieden eigentlich, aber wie viel sicherer ist das denn nun als wenn man einfach Port 5000 für die DS Port 443 für den Router. etc. nimmt?

Nun ein "Vorteil" wäre zumindest, dass Du nur einen Port nach aussen offen hast. Nämlich den für SSH. Wenn Du den Tunnel dann noch mit pub key auth und passphrase absicherst, ist das schon recht sicher... aber die 100%ige Sicherheit wirds nie geben. ;) Da hilft nur, nicht ans Netz hängen...

gruss
dude
 

5n00py

Benutzer
Mitglied seit
31. Aug 2009
Beiträge
257
Punkte für Reaktionen
0
Punkte
16
Vielen Dank, auch ein guter Tipp mit dem Schlüssel, ich probiere das grad mal aus. Im gleichen Zug würde ich gerne root sperren für ssh. Ich bin schon so
weit das ich in der sshd_config PermitRootLogin auf "no" geändert habe.
Nun müsste ich jedoch den SSH-Deamon neu starten. Kann mir jemand sagen
wie das geht?

Habs so probier: /usr/syno/etc/rc.d sshd restart
doch da kommt immer nur:
sshd re-exec requires execution with an absolute path
 

thedude

Benutzer
Mitglied seit
30. Nov 2009
Beiträge
2.244
Punkte für Reaktionen
2
Punkte
84
In Deinem Aufruf ist ein Fehler... /usr/syno/etc/rc.d ist schon richtig. Aber Das startscript fängt mit S an. Dann eine zweistellige Nummer und dann der name. Ich hab grad keinen Access auf meine DS, kann also nicht nachsehen.

Was Du versuchst ist SSH ein weiteres mal zu starte, was nicht geht, weil er sich versucht an Port 22 zu binden und das geht nicht weil da schon ein SSH läuft. (Das siehst Du übrigens wenn Du mal car /var/log/messages eingibst.)

gruss
dude
 

5n00py

Benutzer
Mitglied seit
31. Aug 2009
Beiträge
257
Punkte für Reaktionen
0
Punkte
16
Ich möchte ja eigentlich nur einen Restart wie man ihn auch beim Apache
auch machen kann. Hast du mir vielleicht den richtigen Befehl?
Falls nicht mach ich das manuell über die benutzeroberfläche der DS ;)

Ich habe nun einen neuen Systemnutzer xxx erstellt mit adduser -S xxx und ein
Passwort vergeben. Diesen möchte ich dann den Schlüssel vergeben.
Jedoch kann ich mich irgendwie nicht mit dem user einloggen...
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
13.998
Punkte für Reaktionen
264
Punkte
373
Hallo,
der richtige Aufruf lautet
/usr/syno/etc/rc.d/S95sshd.sh restart

Gruß Götz
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ich habe nun einen neuen Systemnutzer xxx erstellt mit adduser -S xxx und ein
Passwort vergeben. Diesen möchte ich dann den Schlüssel vergeben.
Jedoch kann ich mich irgendwie nicht mit dem user einloggen...
Liegt wahrscheinlich daran, dass dieser neue User in /etc/passwd keine gültige Loginshell eingetragen hat.
 

thedude

Benutzer
Mitglied seit
30. Nov 2009
Beiträge
2.244
Punkte für Reaktionen
2
Punkte
84
Ich habe nun einen neuen Systemnutzer xxx erstellt mit adduser -S xxx und ein
Passwort vergeben. Diesen möchte ich dann den Schlüssel vergeben.
Jedoch kann ich mich irgendwie nicht mit dem user einloggen...

Du musst in /etc/passwd dem user noch eine shell zuweisen. Da ist std. mässig "nologin" drin...

@Goetz: Danke! :cool:

cheers
dude
 

5n00py

Benutzer
Mitglied seit
31. Aug 2009
Beiträge
257
Punkte für Reaktionen
0
Punkte
16
Das stimmt nicht ganz, wenn ich mit adduser -S anlege, wird ja direkt ein
Systemuser angelegt mit Standart /bin/sh
 

thedude

Benutzer
Mitglied seit
30. Nov 2009
Beiträge
2.244
Punkte für Reaktionen
2
Punkte
84
Also ich habe die user per DSM angelegt. Und wenn ich eine gültige shell in /etc/passwd eintrage kann ich mich auch einloggen.

gruss
dude
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Dann liegst es ev daran, dass dieser Systemuser kein Homeverzeichnis hat. Muss afaik auch vorhanden sein, wenn du dich einloggen willst. Auch dieser Wert liegt in der /etc/passwd.
Btw: Benutzer unbedingt im DSM anlegen. Sonst könnte es dir passieren, dass die Firmware eines Tages beim Reboot denkt: "Ach heute gleich ich mal wieder meine interne Userliste mit dem Inhalt von /etc/passwd ab und blase aus passwd raus was ich intern nicht kenne (weil nicht über DSM angelegt)".
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat