82 votes

Comment éviter l'erreur de vérification du certificat lftp ?

J'essaie de faire en sorte que mon Blog du Pélican de travail. Il utilise lftp pour transférer le blog actuel sur son serveur, mais j'obtiens toujours une erreur :

mirror: Fatal error: Certificate verification: subjectAltName does not match ‘blogname.com’

Je pense que lftp vérifie le SSL et la configuration rapide de Pelican a juste oublié d'inclure que je n'ai pas de SSL sur mon FTP.


C'est le code dans le Makefile de Pelican :

ftp_upload: $(OUTPUTDIR)/index.html
lftp ftp://$(FTP_USER)@$(FTP_HOST) -e "mirror -R $(OUTPUTDIR) $(FTP_TARGET_DIR) ; quit"

qui se traduit en terminal par :

    lftp ftp://username@blogname.com -e "mirror -R /Volumes/HD/Users/me/Test/output /myblog_directory ; quit"

Ce que j'ai réussi à faire jusqu'à présent est de refuser la vérification SSL en changeant le Makefile en :

lftp ftp://$(FTP_USER)@$(FTP_HOST) -e "set ftp:ssl-allow no" "mirror -R $(OUTPUTDIR) $(FTP_TARGET_DIR) ; quit"

En raison de mon implémentation incorrecte, je suis connecté correctement ( lftp username@myblog.com:~> ) mais la fonctionnalité de ligne unique ne fonctionne plus et je dois entrer la commande miroir à la main :

mirror -R /Volumes/HD/Users/me/Test/output/ /myblog_directory

Cela fonctionne sans erreur ni délai d'attente. La question est de savoir comment faire cela avec un one liner.


En outre, j'ai essayé :

  • set ssl:verify-certificate/ftp.myblog.com no
  • Cette astuce pour désactiver la vérification des certificats dans lftp :

    $ cat ~/.lftp/rc set ssl:verify-certificate no

Cependant, il semble qu'il n'y ait pas de dossier "rc" dans mon répertoire lftp - donc cette invite n'a aucune chance de fonctionner.

5voto

Lucas Farias Points 51

En outre, j'ai essayé :

  • set ssl:verify-certificate/ftp.myblog.com no
  • Ce site astuce pour désactiver la vérification des certificats dans lftp :

$ cat ~/.lftp/rc set ssl:verify-certificate no

Essayez d'utiliser set ftp:ssl-allow no ça a marché comme un charme pour moi.

3voto

webwurst Points 1125

J'ai lu les pages du manuel et trouvé la solution. Créer un fichier

~/.lftp/rc

et ajoutez la ligne suivante :

set ssl:check-hostname false;

1voto

Nick Tsai Points 1218

J'ai besoin de la commande lftp : set ftp:ssl-allow no;

Vous pouvez exécuter la commande juste après la sélection :

lftp www.yourdomain.com -u username,password -e "set ftp:ssl-allow no;"

ou sauvegarder la commande dans ~/.lftprc .

1voto

user571560 Points 1

Résolu en utilisant ceci :

lftp ftp://$(FTP_USER)@$(FTP_HOST) -e "set ssl:verify-certificate no; mirror -R $(OUTPUTDIR) $(FTP_TARGET_DIR) ; quit"

exemple :

lftp ftp://username@blogname.com -e "set ssl:verify-certificate no; mirror -R /Volumes/HD/Users/me/Test/output /myblog_directory ; quit"

0voto

ri825170 Points 1
lftp -u username,password host -e "set ftp:ssl-allow no" 

a réglé le problème pour moi

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X