2013-08-29 5 views
0

Je travaillais sur un script perl qui vérifie l'autorisation des comptes multi cpanel pour les mots de passe faibles, comme un propriétaire de serveur peut vérifier si ses utilisateurs utilisent un mot de passe faible un fichier dans le/public_html/dir pour informer l'utilisateur. je pensais à l'aide cPanel::PublicAPI:vérifier l'autorisation cpanel avec le script perl et écrire le fichier

my $cp = cPanel::PublicAPI->new(
     'user' => $username, 
     'pass' => $password, 
     'host' => $host, 
    ); 

mais je ne savais pas comment vérifier si connecté et comment écrire le fichier dans ce (i've looked here)

j'ai trouvé un script qui vérifie l'autorisation:

$authx = encode_base64($user.":".$passwd); 
my $sock = IO::Socket::INET->new(Proto => "tcp",PeerAddr => "$host", PeerPort => "$port") || print " [-] Can not connect to the host"; 
print $sock "GET/HTTP/1.1"; 
print $sock "Authorization: Basic $authx"; 
print $sock "Connection: Close"; 
read $sock, $answer, 128; 
close($sock); 

if ($answer =~ /Moved/) { 
print " passord is : $passwd\n"; 
} 

mais ceci est trop lent et ne peut pas écrire de fichier en l'utilisant. désolé pour mon anglais :). ce qui a trait

+0

Ce script d'autorisation est inutilement de bas niveau. Nous avons des bibliothèques HTTP fonctionnelles telles que [LWP :: UserAgent] (http://p3rl.org/LWP::UserAgent) pour des tâches comme celle-là! – daxim

Répondre

0

je ne savais pas comment vérifier si connecté

Il suffit de faire un appel demande/méthode sur l'objet $cp. En cas d'échec, le $cp->{error} attribute est défini.

comment écrire le fichier

use autodie qw(:all); 
open my $fh, '>', '/home/user/message_from_the_admin'; 
$fh->print('You made a boo-boo.'); 

Voir le chapitre 9.3: fichiers dans Modern Perl.

+0

merci pour l'aide :) mais comment puis-je appeler le $ cp pour vérifier si elle échoue? – user2676847

Questions connexes