Envoyer un mail au changement d'IP sous IPCOP (reconnexion)

Forum traitant de la distribution sécurisée montante nommée IP cop et basée sur la distribution Smoothwall. C'est à l'heure actuelle le forum le plus actif du site.

Modérateur: modos Ixus

Envoyer un mail au changement d'IP sous IPCOP (reconnexion)

Messagepar pc1024 » 11 Avr 2005 17:19

Bonjour !

J'utilise IPCOP qui héberge ma connexion internet, laquelle est réinitialisée par mon FAI
toutes les 24H, j’aimerais être informé de ce changement d’ip, par exemple par mail
à la façon ADSL Autoconect. Mais je ne sais pas comment procéder, je ne pense pas
qu’il y est cette option dans l’interface graphique. Fau-il le faire sous le shell ? Editer
un fichier ?

Si quelqu’un à une solution ou une idée je le remercie par avance.

@+ Pierre.
pc1024
Quartier Maître
Quartier Maître
 
Messages: 15
Inscrit le: 04 Avr 2005 10:35

Messagepar chimer » 11 Avr 2005 18:17

Bonjour,

il y avait un post la dessus avec sendemail, mais j'ai fait autre chose.
Avant tout je precise que je n'y connais rien en perl et pas beaucoup en linux!
donc si il y a des lignes superflues dans mon fichier, je ne serais pas faché de toute modif.

Pour creer mon fichier j'ai pris un bout de fichier perl existant dans IPcop

A chaque changement d'ip un mail est envoyé et également une ligne est ajoutée dans les journaux système.

1- créer dans /var/tmp/ le fichier perl: Mail_new_IP.pl
2- dans /etc/rc.d/rc.updatered
sous la ligne -> /usr/local/bin/ipsecctrl S
ajout de -> /var/tmp/Mail_New_IP.pl >/dev/null


le fichier Mail_new_IP.pl
----------------------------------------------------------
#!/usr/bin/perl
# This code is distributed under the terms of the GPL
# $Id: Mail_new_IP.pl / appelé chaque fois que l'ip change
# car inclus dans /etc/rc.d/rc.updatered
# je pense qu'il faut le mettre ailleurs parce qu'il est touché par chaque update
#

close(STDIN);
close(STDOUT);
close(STDERR);

use Net::SMTP;
use strict;
use IO::Socket;
require '/var/ipcop/general-functions.pl';

# Récup adresse IP dans local-ipadress
open(IP, "${General::swroot}/red/local-ipaddress") or die 'Unable to open local-ipaddress file.';
my $ip = <IP>;
close(IP);
chomp $ip;

# log journaux système
&General::log("Mail New IP -> $ip");

# Envoi d'un mail (attention ajouter en tete use Net::SMTP;)
my $smtp = Net::SMTP->new('smtp.wanadoo.fr');
$smtp->mail('xxxx@wanadoo.fr');
$smtp->to('zzzz@wanadoo.fr');
$smtp->data();
$smtp->datasend("Subject: ++new++\n"); # en-tête
$smtp->datasend("\n"); # a la ligne
$smtp->datasend("++new++ $ip\n"); # corps du message
$smtp->datasend("\n"); # a la ligne
$smtp->datasend("end"); # corps du message
$smtp->dataend();
$smtp->quit();
--------------------------------------------------------------------------------------------------------

Ca marche parfaitement depuis une semaine.

A noter qu'il n'est pas necessaire d'envoyer $IP dans le corps du message puisque l'ip est toujours presente dans le mail!



Sur le même principe, j'envoie un mail toutes les 3h avec fcrontab
# Envoi mail pour récup IP toutes les 3 heures
0 */3 * * * /var/tmp/Mail_3h_IP.pl >/dev/null


@+
Avatar de l’utilisateur
chimer
Major
Major
 
Messages: 76
Inscrit le: 30 Déc 2003 01:00
Localisation: Corps (Isère)

Messagepar neodragon » 11 Avr 2005 20:23

Pourquoi pas un dns dynamique pour toujours connaître ton ip ?
Ipcop (Green+Orange+Blue (avec AP) ) + Block Out Traffic + ADVProxy + URLFilter + OpenVPN
Avatar de l’utilisateur
neodragon
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 182
Inscrit le: 14 Fév 2004 01:00
Localisation: Aisne


Retour vers IPCop

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité