「捯饬记录」OpenWrt通过邮件发送wan IPv6地址 您所在的位置:网站首页 ipv6邮件服务器 「捯饬记录」OpenWrt通过邮件发送wan IPv6地址

「捯饬记录」OpenWrt通过邮件发送wan IPv6地址

2023-03-26 07:03| 来源: 网络整理| 查看: 265

记录时间:2020 年 1 月 31 日关键词:openwrt 19.07 ssmtp 邮件通知 IP变化 IPv6 PSG1218 K2更换软件镜像源

鉴于openwrt的官方软件源速度不太行,先换个清华的源。不过ssmtp体积很小,不换的话下载问题也不大。

图片

复制类似下面的地址到opkg/distfeeds.conf并保存。这里以k2路由器的mt7620为例,其他类型或版本可以去清华的镜像源查看,然后找到相对应的目录下复制url地址。

123456src/gz openwrt_core http://mirrors.tuna.tsinghua.edu.cn/lede/releases/19.07.0/targets/ramips/mt7620/packagessrc/gz openwrt_base http://mirrors.tuna.tsinghua.edu.cn/lede/releases/19.07.0/packages/mipsel_24kc/basesrc/gz openwrt_luci http://mirrors.tuna.tsinghua.edu.cn/lede/releases/19.07.0/packages/mipsel_24kc//lucisrc/gz openwrt_packages http://mirrors.tuna.tsinghua.edu.cn/lede/releases/19.07.0/packages/mipsel_24kc//packagessrc/gz openwrt_routing http://mirrors.tuna.tsinghua.edu.cn/lede/releases/19.07.0/packages/mipsel_24kc//routingsrc/gz openwrt_telephony http://mirrors.tuna.tsinghua.edu.cn/lede/releases/19.07.0/packages/mipsel_24kc//telephony 图片安装ssmtp

关于ssmtp,体积小是选择这个的首要因素,下面两种方式都可以安装。

luci管理界面安装

图片

shell命令方式安装12opkg updateopkg install ssmtp 配置ssmtpssh登录openwrt之后,修改并执行以下命令。这里的配置是以163邮箱举例的,如果使用其他的邮箱可能要稍作修改,一些SMTP服务器可能还需要指定具体的端口,详情可以参考ssmtp配置文件中的注释。

编辑配置文件可以

1 vim /etc/ssmtp/ssmtp.conf

也可以用winscp登录,打开/etc/ssmtp/目录下的ssmtp.conf文件修改下面是需要修改的内容举例

[email protected] #替换成自己的邮箱帐户mailhub=smtp.163.com:994 #邮箱的smtp服务器+相应协议的端口号,不填端口则默认25rewriteDomain=163.comhostname=163.comFromLineOverride=YESUseTLS=YES #启用TLS加密发送邮件[email protected] #替换为自己的邮箱帐户AuthPass=xxx #邮箱密码或者邮箱客户端授权码

关于端口号:网易163邮箱提供的SMTP服务器端口号

图片

创建获取IP并发送邮件的脚本

其实就是把之前用于Padavan的脚本稍作修改之后得到的。另外除了下载也可以直接复制脚本内容,手动新建一个脚本文件,或者保存修改后用winscp等等工具上传到openwrt等等,怎么方便怎么来。

建立脚本

12touch /sbin/ipmail.shvim /sbin/ipmail.sh

复制以下内容到ipmail.sh1234567891011121314151617181920212223242526272829303132333435#!/bin/sh -e#设置发件人地址,与ssmtp配置一致from=FROM#设置收件人地址,多人用英文逗号隔开towho=TOWHO#有必要的话更改网络接口名(网卡)interface=pppoe-wanfile=$HOME/.ipmail[ -e $file ] && old=`cat $file`#获取wan ip地址ipaddress=$(ip -6 addr list scope global $interface | grep "global" | sed -n 's/.*inet6 \([0-9a-f:]\+\).*/\1/p')#判断ip地址是否存在if [ -z "$ipaddress" ]; then  echo "no IPv6 address found"  exit 1fi#检查地址是否改变if [ "$old" = "$ipaddress" ]; then  echo "IPv6 address unchanged"  exitfimailtxt=$HOME/.ipmailtext#写好邮件cat > $mailtxt



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有