Alt med FTP og backend er oppe og køre...Mangler bare frontend'en...
Har en ide om at steppe /etc/passwd filen for at finde uid/gid
Resten har jeg bare ikke rigtigt nogen ide om...Andet end at lave en exec på adduser kommandoen samt på chown kommandoen...Det med at sætte password, kan jeg ikke rigtigt gennemskue, da jeg ikke kan se hvordan man skulle kunne angive passwordet begge gangene (for ikke at sige bare den ene gang)
Homedir og shell må vel også kunne klares ved at steppe /etc/passwd filen...
Men igen...Der må da findes en lettere måde end at skulle steppe den fil hver gang...Den kunne jo gå hen og blive lang med tiden...
ALtså det med Uid og Gid kan du sagtens styre fra mysql. giv dem et nummer højrere for hver bruger du opretter og så er den klaret det med oprettelse af mappe til homedir der opretter du bare mappen normalt, dog skal du huske at scriptet der laver en chown sakl ejes af root før du kan dette.
Problemet er jo bare at hvis man så manuelt opretter en bruger på box'en, så har man jo det problem at den næste FTP bruger man opretter ikke får det rigtige UID/GID...Så man skal vel tjekke op mod passwd??
nej nej i det at du opretter dine ftp brugere i en Mysql databse så vil ftp programmet sætte rettighedder på alle deres filer til det som står skrevet i databasen. Derfor behøver du slet ikke oprette brugeren i din box men kun i Mysql, det gør også at brugeren ikke får mulighed for at logge sig ind på din server via ssh og dermed mere sikkerhed...!
Det er derfor jeg skal have sat den til en nologin shell...Så kan brugeren jo ikke logge ind...
Problemet er nemlig at jeg har forsøgt at lade FTP'en bestemme, men det duer ikke...Brugeren kan godt se hvad der ligger i diret, men kan ikke oprette nye kataloger eller filer deri...
# This is a basic ProFTPD configuration file (rename it to # 'proftpd.conf' for actual use. It establishes a single server # and a single anonymous login. It assumes that you have a user/group # "nobody" and "ftp" for normal operation and anon.
ServerName "twister.tyfus.dk" ServerType standalone DefaultServer on DefaultRoot ~ LsDefaultOptions "-a" UseReverseDNS off IdentLookups off ShowSymlinks on AllowRetrieveRestart on AllowStoreRestart on RequireValidShell no AllowForeignAddress on AllowOverwrite on
# Port 21 is the standard FTP port. Port 21 # Umask 022 is a good standard umask to prevent new dirs and files # from being group and world writable. Umask 022
# To prevent DoS attacks, set the maximum number of child processes # to 30. If you need to allow more than 30 concurrent connections # at once, simply increase this value. Note that this ONLY works # in standalone mode, in inetd mode you should use an inetd server # that allows you to limit maximum number of processes per service # (such as xinetd) MaxInstances 30
# Set the user and group that the server normally runs at. User nobody Group nobody
# Normally, we want files to be overwriteable. <Directory /*> AllowOverwrite on </Directory>
# A basic anonymous configuration, no upload directories. #<Anonymous ~ftp> # User ftp # Group ftp # # We want clients to be able to login with "anonymous" as well as "ftp" # UserAlias anonymous ftp # # # Limit the maximum number of anonymous logins # MaxClients 10 # # # We want 'welcome.msg' displayed at login, and '.message' displayed # # in each newly chdired directory. # DisplayLogin welcome.msg # DisplayFirstChdir .message # # # Limit WRITE everywhere in the anonymous chroot # <Limit WRITE> # DenyAll # </Limit> # #</Anonymous>
Hvordan laver man en restart på den?? Kan ikke få den til at restarte, uden at man rebooter maskinen...Hvis jeg laver en killall på den, så kører den stadig (påstår den)
Har prøvet at chown'e det til ftp.ftp som den test bruger skulle køre som...
Og det virker stadig ikke...
For at jeg kan få det til at virke, skal jeg oprette en bruger på box'en, og så er det jo at jeg vil give den bruger en nologin shell, så den ikke kan logge ind...
jeg er selv igang med et projekt der nok ligner dit en del, såå har været alt dette igennem :-) hvad skal det egentlig bruges til hvis jeg må spørge ??
Det er en af mine kammerater der vil til at hoste nogle domæner for nogle han kender...Men han synes det var for besværligt på den gammeldags facon, med brugere, så derfor ville han have det med MySQL backend, og så lave det via den...
Så er det vel bare at scriptet der opretter en ny bruger tjekker med MySQL hvad UID/GID den seneste bruger havde og lægger 1 til...
Er der et maks på hvad man kan bruge...Må vel hellere vælge nogle som der ikke er så store chancer for at de bliver brugt på normal vis med oprettelse...
ja du tager bare tallet fra mysql og +'er det med 1 så virker det så de ikke har samme uid og gid ved nu ikke om der er et max, jeg har sat mit til at starte fra 600 og så bare gå derop af
hvorfor lige 555 ?? hmm ikke noget bestemt, det var ren copy fra icq message. selv bruger jeg ikke shell_exec men i stedet chown i php funktionen jeg fatter ikke rigtig det der shell og når nu php har noget til det og mine scripts er skrevet i php så går det jo nok :-))
ved ikke om man kan bruge chown med basedir meen med safe_mode kan man godt det eneste problem der er med chown er at man kan ikke køre det via sin apache, da det kræver at det er root der kører det og apache har ikke root rettighedder man kan sel.f sætte den op med root adgang meen der er ultimo usikkert :-((
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.