Il a fait la déclaration lors d'une audience générale sur la place Saint-Pierre, qui rassemble des dizaines de milliers de fidèles.
"Je vous invite tous à demander pardon (à Dieu) pour les personnes et institutions qui ferment les portes à ces gens (...) qui veulent être protégés", a-t-il déclaré le pape.
"Nous disons avec respect au pape que nous n'avons pas besoin de pardon", a immédiatement répliqué à la radio Matteo Salvini, chef de la Ligue du Nord qui appelle régulièrement à rejeter les migrants à la mer.
"Nous pêchons comme tout le monde mais nous nous sentons meilleurs et plus généreux que d'autres pseudo-catholiques qui disent qu'il y a de la place pour tout le monde", a-t-il insisté.
L'appel du pape ne visait aucun pays, institution ou personne en particulier, mais intervient dans un contexte de tensions dans l'Union européenne, et entre la France et l'Italie sur la question de l'immigration.
François a évoqué "tant de nos frères et soeurs qui cherchent refuge loin de leurs terres, qui veulent une maison où vivre sans peur, pour que soit respectée leur dignité".
"J'encourage le travail de ceux qui leur apportent de l'aide et j'espère que la communauté internationale agira de manière conjointe et efficace pour prévenir les causes des migrations forcées", a-t-il ajouté.
Son encyclique "Laudato si'" sur la défense de l'environnement, qui sera publiée jeudi, évoque la responsabilité humaine dans les désastres climatiques qui provoquent pauvreté, guerres et migrations massives.
Les pays de l'Union européenne sont en désaccord sur les modalités d'accueil des dizaines de milliers de migrants, en particulier syriens et érythréens, qui affluent sur ses côtes, essentiellement en Italie et en Grèce.
Avec AFP