Utilisation mail.php sur la version 2.3-RC



  • Bonjour,

    Je suis en license pro ASUR et mon projet conssite a faire un portail captif avec un système d'auto enregistrement. Je dispose d'un pfsense version 2.3-RC sur une vm virtualbox couplé d'un freeradius+ phpmyadmin lui aussi sous virtualbox. je possède un formulaire ou les utilisateurs renseignent leurs données personnelles (notamment une adresse mail) puis reçoivent un mail avec leur login mot de passe tout en renseignant le compte dans le mysql.

    L'écriture dans la base de donnée fonctionne. Néanmoins je ne parviens pas a envoyer un mail. Autant en php avec la fonction mail() qu'avec le fichier mail.php. si quelqu'un est parvenu a envoyer un mail ou connait la syntax de mail.php merci de me faire communiquer comment il a procédé.

    Merci d'avance pour toutes aides.

    Cordialement



  • Le formulaire existe et est nécessaire !

    pfSense est un firewall, mais pas une machine à bricoler qui réalise des taches cron, qui envoie des mails, et qui fait des briques avec la glaise du champ d'à côté …

    L'utilisateur est inconnu : il clicke sur un lien (sur un serveur interne) où il pourra s'inscrire.

    C'est le principe du KISS : un serveur doit faire une seule chose pour la faire bien !



  • @Carltonson-sky:

    Bonjour,

    Je suis en license pro ASUR et mon projet conssite a faire un portail captif avec un système d'auto enregistrement. Je dispose d'un pfsense version 2.3-RC sur une vm virtualbox couplé d'un freeradius+ phpmyadmin lui aussi sous virtualbox. je possède un formulaire ou les utilisateurs renseignent leurs données personnelles (notamment une adresse mail) puis reçoivent un mail avec leur login mot de passe tout en renseignant le compte dans le mysql.

    L'écriture dans la base de donnée fonctionne. Néanmoins je ne parviens pas a envoyer un mail. Autant en php avec la fonction mail() qu'avec le fichier mail.php. si quelqu'un est parvenu a envoyer un mail ou connait la syntax de mail.php merci de me faire communiquer comment il a procédé.

    Merci d'avance pour toutes aides.

    Cordialement

    Et pour le café vous avez prévu quoi comme interface ?? Pfsense est un firewall, pas un supermarché.
    Plus sérieusement vous pouvez continuer l’exercice (et trouver facilement la syntaxe de la fonction mail()). N'en tirez aucune conclusion sur la possibilité d'utiliser dans une démarche sécurité une telle solution qui est problématique de A à Z, techniquement, juridiquement.



  • @jdh:

    pfSense est un firewall, mais pas une machine à bricoler qui réalise des taches cron, qui envoie des mails, et qui fait des briques avec la glaise du champ d'à côté …

    @ccnet:

    Plus sérieusement vous pouvez continuer l’exercice (et trouver facilement la syntaxe de la fonction mail()). N'en tirez aucune conclusion sur la possibilité d'utiliser dans une démarche sécurité une telle solution qui est problématique de A à Z, techniquement, juridiquement.

    • pfSense envoie déjà nativement des mail (il suffit de configurer, par exemple, la section "notification" dans le menu "advanced")
    • pfSense est également développé pour que, nativement, sans package additionnel, l'administrateur puisse intégrer sa propre page d'authentification

    Ce n'est donc pas complètement délirant de vouloir faire ce que l'auteur décrit non ?
    (sans discuter des aspects juridiques car de le cadre d'un projet ou exercice, je ne vois pas où est le problème)

    @Carltonson-sky

    avec le paramètre "Pre-authentication redirect URL" on ne peut pas gérer cette fonction sur un serveur externe ?
    Je n'arrive pas à comprendre, dans ce que tu décris, si ton code php tourne sur pfSense  ???



  • @chris4916

    J'ai essayer de paramétrer depuis l'interface web depuis la section "advanced" le pire c'est que ça fonctionne quand je fais un test, sauf que quand j'essaye d'envoyer un mail avec mail.php cela ne fonctionne pas.
    J'ai bien tenter de trouver un fichier a paramétrer avec les différents paramètres mail. j'ai vu sur internet qu'il parlait du php.ini J'ai donc essayer mais sans succès..
    Pour ce qui est de la "pré-authentification url" je vais voir si je peux pas diriger les utilisateurs dans un premier temps sur mon serveur. je te tiens au courant de l'évolution de cette idée. Pour ce qui est du code sur le pfsense. je suis débutant en programmation et je ne sais pas comment faire pour que le pfsense a l'issu du formulaire aille exécuter le script sur mon serveur distant (sur le même réseau).

    Merci



  • La situation est claire :

    • vous êtes débutant en programmation
    • vous êtes débutant en firewall, et ne semblez pas conscient des risques à greffer un système sur un firewall
    • chris4916, coutumier du fait, prétend des choses, qu'il n'utilise pas lui-même comme il le répète à chaque fois …

    Il y a la sagesse et vos essais ...

    Un firewall est un élément de sécurité : il n'émet pas de mail, il envoie dans syslog (doit/devrait envoyer) !

    Le mieux, comme je l'ai indiqué, est juste d'ajouter un lien vers un serveur interne où un visiteur pourra s'inscrire.
    La réalisation de ce serveur sera autrement plus instructif qu'un bricolage insecure sur un firewall !

    Personnellement, je ne connais pas vos profs, mais si l'un affirmait que l'on peut ajouter, en toute sécurité, un dispositif comme cela sur un firewall, je le suspecterai d'incompétence et certainement d'inconséquence.



  • @jdh:

    • chris4916, coutumier du fait, prétend des choses, qu'il n'utilise pas lui-même comme il le répète à chaque fois …

    En l’occurrence je ne prétend rien  :D
    Je montre juste que les développeurs de pfSense (et je ne parle pas des développeurs de package  :P) n'ont ni ta sagesse ni ta compétence puisqu'ils ont inclus dans le produit, nativement, des fonctionnalités d'envoi de mail et d'import de page HTML/PHP pour faire fonctionner le portail captif.

    ça n'a rien à voir avec ce que je fais ou pas.

    Bien sûr, ne nous voilons pas la face, ça démontre également que ta position dogmatique certainement excellente n'est pas celle des développeurs du produit, et plutôt que de perdre du temps à montrer que je suis nul, tu pourrais, pour le bien de la communauté, argumenter dans ce sens dans le forum "en anglais" pour expliquer pourquoi la solution actuelle n'est pas sécurisée.
    Il s'en suivra certainement des discussions intéressantes auxquelles je ne manquerai pas de participer, promis  8)

    Note bien que je ne prétends pas non plus qu'il faille absolument tout développer sur le portail.
    Je réagis juste à ta position qui assène sans explication :

    " Un firewall est un élément de sécurité : il n'émet pas de mail"

    je te laisse lire ça et plus particulièrement la section qui décrit:

    Notifications

    Add the ability to disable Growl or SMTP notifications but keep their settings intact, so the mail settings can be used for other purposes (packages, etc)
        Add a test button to selectively test Growl or SMTP notifications without re-saving settings
        Do not automatically generate a test notification on saving notification settings, as there are now individual test buttons



  • Comme d'habitude …

    CESSEZ d'embrouiller les débutants avec des utilisations insecure et ineptes !

    Je peux penser que 99,5% des administrateurs n'attendent pas de mails d'un firewall !
    Mais aussi on a vu, ici, des 'pseudo'-administrateurs de firewall qui, sous prétexte de sauvegarder la conf, n'imagine rien de mieux que de scripter des accès ssh sur les firewall avec mot de passe en dur !
    Vous ne cessez de défendre des MAUVAISES pratiques, et de façon systématique face à des débutants qui lisent vos écrits sans même y voir la 'porte ouverte', l'insécurité ...

    Jamais vous réfléchissez à ce que vous écrivez et au niveau des lecteurs ?
    Il vaut mieux ne pas décrire une mauvaise pratique que d'en parler : celui qui a l'expérience fait la part des choses, pas le débutant qui finit par croire

    Attitude IRRESPONSABLE !!!



  • @jdh:

    Vous ne cessez de défendre des MAUVAISES pratiques, et de façon systématique face à des débutants qui lisent vos écrits sans même y voir la 'porte ouverte', l'insécurité …

    ;D

    N'hésite surtout pas à nous expliquer en quoi l'envoi d'un mail depuis le firewall est une porte ouverte à l'insécurité.

    Nous ne parlons bien sûr pas ici de transformer le FW en MTA mais de fonctionnalité qui déclenche l'envoi d'un mail par le FW, tel que ça existe déjà nativement avec pfSense.
    D'ailleurs je te joins une petite copie d'écran dès fois que tu n’aies jamais vu cette fonctionnalité  ;)

    Tu devrais alors, comme je te l'ai déjà suggéré, discuter de ça avec l'équipe de développement  :-X

    Jamais vous réfléchissez à ce que vous écrivez et au niveau des lecteurs ?
    Il vaut mieux ne pas décrire une mauvaise pratique que d'en parler : celui qui a l'expérience fait la part des choses, pas le débutant qui finit par croire

    Attitude IRRESPONSABLE !!!

    Par croire quoi ???

    Disons que contrairement à toi, je pense que si on explique vraiment, même à un débutant, pourquoi faire et ne pas faire certaines choses, il va le comprendre et progresser. Je ne sous-estime pas, à priori, sa capacité à comprendre mais plutôt ma propre capacité à m'exprimer de manière compréhensible et courtoise  ;)

    De même, il est plus intéressant pour tous, à mon avis (que tu n'es pas obligé de partagé, ça va de soi) ,de lire un débat sur
    "l'envoi de mail depuis pfSense est-il vraiment dangereux et pourquoi ?"
    que de juste lire des assertions dogmatiques:
    "c'est dangereux, croit moi, moi au moins j'ai de l'expérience donc n'en parlons surtout pas !"




  • Quel discours pernicieux et de merde ! Vraiment un connard de première …



  • Je rappelle que, moi, j'ai donné une réponse au problème posé (et mal posé puisque sans formulaire).
    Et que ma réponse est une réponse sûre, simple et efficace … même si elle est exigente.

    Il est clair que, quand on est en formation, il faut penser 'bonne pratique' et pas 'bordel sans nom'; il faut penser 'système simple' = 1 fonction et bien, et non pas plein de fonctions, pas bien
    Alors vous savez qui il faut écouter et qui il ne faut pas !

    Un firewall ça n'envoie pas de mail : ça, c'est un certitude !
    Parce que, même si vous dédiez une boite voire plusieurs boites, qu'est ce que vous allez faire quand vous aurez des dizaines de mails par jour d'alertes en tout sens ?
    Quel système allez vous incriminez quand vous n'aurez pas reçu le mail qui aurait dû ...
    Qui allez vous remerciez quand votre beau firewall aura été cassé à cause d'une faille dans le système d'envoi de mail ?

    Faut être clairement très stupide (ou ne pas gérer de matériels ?) pour ne pas comprendre que

    • d'un côté, syslog qui se définit juste avec une adresse ip, n'a rien à voir avec
    • de l'autre côté, smtp qui a besoin d'au minimum 3 paramètres quand ce n'est pas 4 de plus, plus les questions de multiples destinataires, plus gmail, plus Mac (Growl), plus ... et qui va encombrer une boite (ou N) qu'on ne regardera jamais ...
      Il y a un moment où ...
      Les dessins avec la balançoire telle que souhaitée, telle que conçue, telle que vendue, telle que installée devraient un peu vous inspirez ...

    Vous voulez un exemple de différences entre français et anglophones (c'est très exactement le même sujet, et vous remarquerez que, si la réponse est la même, le retour est différent !) :

    Non, le mieux, faites le test : prenez 15, 20, 30 serveurs, firewalls, nas, copieurs avec plein de taches (sauvegarde, transfert, ouverture, envoi de scans, ...), dans un cas avec des alertes par mail, puis dans l'autre avec Syslog.
    Racontez moi, dans un mois, si vous êtes passé à côté d'une alerte ...

    Et vous auriez vu le cas d'un débutant, demandant si on peut tester les spam avec pfsense, avec un crétin qui lui conseille d'utiliser un package, alors même, que sur le forum anglais, le même sombre idiot reconnaissait que le package n'était pas une bonne solution ni même stable, tout en écrivant qu'il n'utilisait pas cette solution !



  • @jdh:

    Je rappelle que, moi, j'ai donné une réponse au problème posé (et mal posé puisque sans formulaire).
    Et que ma réponse est une réponse sûre, simple et efficace … même si elle est exigente.

    jdh,

    Ton acharnement, dans je ne sais quelle compétition qui n'existe que pour toi d'ailleurs, à démontrer que toi tu as raison et que moi j'ai tord t'aveugle  ;D

    Tu ne réalise même pas que ma proposition à Carltonson-sky est d'utiliser le lien de pré-authenticaiton pour traiter cette fonction sur un serveur externe. Mais si tu veux la paternité et la reconnaissance de la bonne réponse, il n'y a pas de problème, je ne me bas pas pour ça.

    Pas plus que tu réalises que ce contre quoi je réagis, c'est ta position dogmatique "le firewall n'envoie pas de mail, il faut utiliser syslog"

    @jdh:

    Un firewall ça n'envoie pas de mail : ça, c'est un certitude !

    Comme tu le sais, pfSense permet d'envoyer des mail et ce de manière totalement indépendante de (r)syslog.
    Je configure la plupart des occurrences de pfSense que je déploie pour écrire dans un rsyslog mais également avec une notification par mail.
    Ces 2 usages sont à mon avis, et probablement de l'avis des développeurs de pfSense, complémentaires et non pas en opposition comme tu essayes de le démontrer.

    Tu peux très bien écrire dans le log (ou rsyslog) les éléments dont tu as besoin pour l'exploitation de ta plate-forme.
    Rsyslog est très pratique puisqu'il permet de faire facilement des corrélations entre des événements survenus sur plusieurs machines. Mais pour être notifié d'une erreur, à moins de disposer d'un outil d'analyse temps réel, ce n'est pas très pratique.
    Recevoir un mail en cas d'alerte (comme par exemple une gateway qui passe de l'état up à down) peut être dans certains cas très pratique.

    Qui allez vous remerciez quand votre beau firewall aura été cassé à cause d'une faille dans le système d'envoi de mail ?

    N'hésite pas à décrire plus en détail comment cela se passe (potentiellement) et à revenir vers Jim (que tu cites par ailleurs) pour lui dire que son idée d'introduire cette fonctionnalité (puisque c'est à son initiative) est une mauvaise (ou au moins fausse bonne) idée  :P

    Faut être clairement très stupide (ou ne pas gérer de matériels ?) pour ne pas comprendre que

    • d'un côté, syslog qui se définit juste avec une adresse ip, n'a rien à voir avec
    • de l'autre côté, smtp qui a besoin d'au minimum 3 paramètres quand ce n'est pas 4 de plus, plus les questions de multiples destinataires, plus gmail, plus Mac (Growl), plus … et qui va encombrer une boite (ou N) qu'on ne regardera jamais ...

    La gestion de multiples destinataires : tu es intervenu sur ce débat dans un des fils que tu cites. N'essaies pas de faire croire ici que c'est un problème. Comme le dit Jim (et toi également si je ne me trompe pas), une simple liste de diffusion fait l'affaire.
    Quand à la difficulté de configurer 3 ou 4 paramètres… je ne vais pas la commenter.  :-X



  • CESSEZ d'intervenir sur les fils où j'interviens … surtout pour foutre le bordel ...

    Oui vous ne donnez aucune solution sur ce fil !



  • bref, ducoup j'essaie de faire exécuter les script sur mon serveur seulement je ne parviens à diriger dans un premier temps l'authentification sur ma page de bienvenue situé sur mon serveur par le bias du preauth-url. j'ai essayer en inscrivant dans le champ approprié du portail captif http://x.x.x.x/path/to/landing/page.html seulement cela ne fonctionne pas.
    j'ai vu que cela était possible en rajoutant ce code ( source du post https://forum.pfsense.org/index.php?topic=34148.0 )

    require("globals.inc");
    $request_uri = urldecode(str_replace("/index.php?redirurl=", "",  $_SERVER["REQUEST_URI"]));
    $portal_redirurl = urldecode("$PORTAL_REDIRURL$");
    if(!stristr(urldecode("$PORTAL_REDIRURL$"), $request_uri)) {
    	Header("Location: $PORTAL_REDIRURL$");
    	exit;
    }
    ?>
    

    j'ai donc tester de rajouter ce code au début de l'exemple du formulaire que pfsense fournit. comme stipulé dans le post j'ai  autoriser l'@ip du serveur et fais le test. sans succès. Quelqu'un aurait-il une indication ?