Yep... J ai buildé un petit Php pour tester (j ai simplement supprimé --interact dand build-key, ce qui supprime les prompts terminal) :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| <?php
if(!isset($_GET['nomclient']) ) {
echo ("manque : nom client<p>Dans l'url, "
."renseigner : ?nomclient='monnom'"
."<p>exemple : www.example.com/vpn_auth/?nomclient=monnom</p>");
}
elseif( strlen($_GET['nomclient'])>8 ) {
echo (" nom client torp long : max 8 caractères");
}
else {
// --- FORMATTAGE NOM CLIENT ---
$nomClient = "testauto_"."client_".addslashes( trim ( $_GET['nomclient'] ) );
echo 'nomclient ='.$nomClient."<br/>";
// --- GENERATION DES CLEFS ---
$output1 = shell_exec('source /etc/openvpn/easy-rsa/vars') ;
echo "generating : ".'/etc/openvpn/easy-rsa/build-key.autodelire '. $nomClient . "... ";
$output2 = shell_exec('/etc/openvpn/easy-rsa/build-key.autodelire '. $nomClient ) ;
echo 'generation done.<br/>'.'> source vars: '.$output1.'<br/>> build-key: '.$output2."<br/>";
// --- ZIP DU PACKAGE A REMETTRE AU CLIENT ---
echo "zipping... ";
$outputtar = shell_exec('tar cf '. $nomClient .'.tar /etc/openvpn/easy-rsa/keys/'. $nomClient .'* ');//tar cf client_bluebox.tar /etc/openvpn/easy-rsa/keys/client_bluebox*
echo 'zip done. '. $outputtar;
//render .tar :
echo json_encode( array( 'result'=>'ok', 'path'=>'todo' ) );
}
?> |
Question sécurité, c'est une autoroute je pense.
En tous les cas, la ligne suivante n exécute rien (bien qu elle soit fonctionnelle en root SSH) :
$output2 = shell_exec('/etc/openvpn/easy-rsa/build-key.autodelire '. $nomClient ) ;
rendu :
Partager