Maximale Länge des Benutzernamens? (ISPConfig 3.0.4.1)

Dieses Thema im Forum "Installation und Konfiguration" wurde erstellt von titanium, 1. Dez. 2011.

  1. titanium

    titanium New Member

    Ich möchte in ISPConfig 3.0.4.1 einen neuen Shell-User anlegen. Nach Ablauf der Skriptwarteschlange gibt es in /var/log/ispconfig/cron.log allerdings eine Fehlermeldung:

    useradd: invalid user name '<MEINUSERNAME>'
    PHP Warning: chown(): Unable to find uid for <MEINUSERNAME> in /usr/local/ispconfig/server/plugins-available/shelluser_base_plugin.inc.php on line 101
    usermod: user '<MEINUSERNAME>' does not exist

    Ich vermute, es liegt daran, dass der tatsächliche Username (<MEINUSERNAME> ist hier im Posting nur als Platzhalter zu verstehen ;-) ziemlich lang ist (34 Zeichen). Gibt es eine Längenbeschränkung, was den Usernamen angeht?

    Vielen Dank für Hinweise.
     
  2. nowayback

    nowayback Well-Known Member

    Wenn ich nicht völlig falsch liege, dann ist Standartmäßig 32 Zeichen als maximale Länge vorgegeben.

    Grüße
    nwb
     
  3. titanium

    titanium New Member

    Danke dir für die Antwort, nwb. Das wird der Grund sein. An dieser Stelle muss man wohl ein bisschen mitdenken - ISPConfig erlaubt das Eintragen eines so langen Usernamens, aber bei der Arbeitung der Warteschlange kommt es dann zu Problemen.

    Vielleicht macht es Sinn, dass ISPConfig die Länge des gesamten Shellusernamens abfragt und eine Fehlermeldung ausspuckt, wenn der dümmere Anwender (also ich :) versucht, das Limit von 32 Zeichen zu sprengen.
     
  4. nowayback

    nowayback Well-Known Member

    Das Problem wird sein, dass man die Länge auch verändern kann... Bitte frage mich jetzt nicht wo bzw. wie, aber ich weiß dass das geht.

    Da man den Wert, soweit ich weiß, nicht abfragen kann, bleibt wohl nur der gesunde Menschenverstand beim Anlegen ;)

    Grüße
    nwb
     
  5. Till

    Till Administrator

    Was setzt Du denn für eine Distribution ein? Bei Debian ist die max Shell Userlänge 256 zeichen, siehe Befehl:

    getconf LOGIN_NAME_MAX

    ISPConfig geht da schon auf Nummer sicher und lässt nur 64 Zeichen zu.

    ISPConfig kann das nur nicht sinnvoll abfragen, denn das Interface läuft ja nicht notwendigerweise auch dort, wo der username erstellt wird. Stichwort Multiserver.
     
  6. titanium

    titanium New Member

    Hmm, danke für den Shellbefehl, Till. Ich setze ein aktuelles Debian ein.

    $getconf LOGIN_NAME_MAX
    256

    $lsb_release -a
    Description: Debian GNU/Linux 6.0.3 (squeeze)
    Release: 6.0.3
    Codename: squeeze

    Dann muss das Problem doch eine andere Ursache haben :confused:
    Seltsam. Der Username enthält lediglich Kleinbuchstaben im Bereich a-z, keine Sonderzeichen und nix.
     
  7. Till

    Till Administrator

    hast Du mal versucht den Usernamen mit useradd manuell auf der Shell anzulegen und wenn das nicht geht, ihn dann mal die letzten 2 Zeichen zu entfernen und es nochmal versucht? Sind vielleicht irgendwelche nicht alphanumerischen Zeichen wie ein - drin?
     
  8. titanium

    titanium New Member


    Gute Idee. Habe ich soeben ausprobiert und festgestellt, dass meine Debian-Installation nicht mehr als 32 Zeichen als Nutzernamen annimmt. Sonst wird sofort gemeckert:

    Code:
    useradd: invalid user name 'ich_bin_ein_benutzer_mit_langem_namen'
    man useradd sagt:
    Das ist dann wohl doch die Erklärung, so wie nowayback schon schrieb. Es können also keine Nutzernamen mit mehr als 32 Zeichen (zumindest mit Debian) angelegt werden.
     
  9. Till

    Till Administrator

    Dann werde ich wohl mal die max. Länge in ISPConfig auf 32 ändern müssen. Kannst es ja mal im Bugtracker posten.

    Wie kommst Du eigentlich zu so langen Usernamen? Ich tippe mal drauf dass Du den Userprefix geändert hast? Der Standard ist aus gutem Grund nur die ID :) Denn sonst kannst Du theoretisch alleine durch den Userprefix in die Situation kommen, dass Du garkeinen user anlegen kannst, weil der Prefix selbst länger als die max userlänge ist.
     
  10. nowayback

    nowayback Well-Known Member

    Vielen Dank dafür das du mir gezeigt hast, das ich mich doch noch auf meine paar Grauen Zellen verlassen kann ;)
     
  11. titanium

    titanium New Member

    Echt? Standard ist ID? Bei mir steht im Formular für die Erstellung eines Shellusers

    Benutzername: [CLIENTNAME] [ ]

    Ich meine, ich hätte das nicht bewusst geändert und wäre noch mit dem Standard unterwegs...

    Zu deiner Frage :)
    Der Clientname selbst ist schon recht lang, und ich vergebe dann als zweiten Teil des Benutzernamens den Real-Nachnamen des Users, der in diesem Fall auch recht lang ist. Insgesamt kam ich dann über 32 Zeichen (genau waren es 34, also knapp drüber), und da ist mir dann das kleine Problem aufgefallen.
     

Diese Seite empfehlen