Gå til innhold

php script som oppretter ssh account + mere


Anbefalte innlegg

Skrevet

Hei, driver å lager ett webhotell og jeg har ett nogenlunde bra design, det jeg lurte på er hvor jeg kan få tak i ett php script som automatiks oppretter en ssh konto, mysql konto, vhost bind med underdomene

 

Kan dette gjøres i php og er noen så grei at de kan lage, eller gi meg link til noe lignende som allerede er laget..?

 

mvh

Glad

Videoannonse
Annonse
Gjest Slettet+142
Skrevet (endret)

"hvor du får tak i et slikt skript"? prøvd www.google.no ?

ellers mener jeg at du heller burde tenkte på et php skript som registrerer en evt. ny bruker i en database. og kjører du linux kan du jo lage et program enten i C++, PHP eller andre som kan kjøre som root og oppdatere konfigurasjonsfiler, kjøre grant-kommandoer på databasen og evt. opprette en *unix-bruker. og som kjøres automatisk hver 30. minutt. ved hjelp av cron :)

 

holder på å sette opp et slikt skript til meg selv, men det virker ikke enda :no:

Endret av Slettet+142
Skrevet

jepp, jeg kjører Slackware current, får vel prøve meg på forslaget ditt viss ingen vet om noe ferdiglaget, c++ kunnskapene mine er litt rusten, og php kan jeg ikke i det hele tatt, men skal nok få det til..

Skrevet (endret)

Tror jeg heller ville laget et bash-script som lager alt det du snakker om, og heller bare latt php-scriptet kalle dette.

 

C++ til gjøre dette er totalt feil, galt og håpløst.

Endret av Nazgul
Skrevet

hmm, er det mulig å få bash scriptet til å hente ut den nyeste registrerte bruker fra en database og derreter lage en unix account..?

 

det er jo en enkel sak og lage et script som lager mapper å ordner vhost men det batabase greiene..

Skrevet

Er ikke noe problem å kalle et BASH-skript fra PHP med shell_exec('/sbin/script'); men tenk på sikkerhetsrisikoene her. BASH-skriptet må være satt slik at det blir kjørt av root.

 

Å opprette mysql-sakene dine er ikke noe problem heller. Alt som skal gjøres der, kjøres via mysql-kommandoen.

Skrevet

hm, hvordan skulle jeg da eventuelt få dette her sikkert, hvordan gjør de store webhost selskapene dette da? kjører de unix i det hele tatt, tviler litt på at det er windows i gårn da..

Skrevet

Her har du noe basic php som lager en mysql bruker og database. Lage deg et bash script som bruker sudo og lag bruker og slikt med.

 

<?php
function addUser($username, $password)
{
$link = mysqli_connect(/* koblings informasjon, NB! MÅ være root */);
mysqli_query($link, "CREATE DATABASE $username");
mysqli_query($link, "GRANT ALL PRIVILEGES ON $username.* TO '$username'@'localhost' IDENTIFIED BY '$password';");
system("./adduser.sh $username $password");
}
if(isset($_GET['username']))
{
addUser($_GET['username'], $_GET['password']);
}
?>
<!-- DESIGN -->

Skrevet (endret)

så jeg lager ett php script som legger bruker navn og passord i database så kjører jeg et bash script i cron som henter ut passord og lager bruker, dette skulle jo ikke være en sikkkerhets risiko?

 

edit: datbasen skal jo selfølgelig ikke kjøre som root, men som en bruker som bare har lese skrive rettigheteter..

Endret av glad
Skrevet

Nei, funksjonen tar parametrene String brukernavn og String passord. Det vil si at du kjører det slik:

 

<?php

adduser('$nyttBrukernavn', '$nyttPassord');

?>

Skrevet

Men med HTTP over SSL/TSL (https), gode passordsrutiner, gode rutiner på hvem som får opprette brukere, skikkelig implementering av siden (les dette innlegget på slashdot: PHP Security)

 

Deretter kommer sikkerheten når det gjelder MySQL og SSH-en. MySQL må bare nåes fra localhost. Pluss pluss...

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...