当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > Linux系统中两种替代“花生壳”的办法

Linux服务器
linux下用cron定时执行任务的方法
.htaccess绑定域名到子目录的方法
linux apache下虚拟主机配置方法
apache 局域网访问配置方案
linux Apache服务器系统安全设置与优化
linux中mac地址绑定方法
linux托盘不断闪烁之解决方法
Apache配置 虚拟转向实例
Apache No space left on device的解决办法
Apache rewrite的重写相关的参数说明
LINUX入门级常用命令20条整理
Ubuntu设置开机自动挂载所有格式硬盘分区
5个可能被你忽略的Linux安全设置方法
学习Apache的mod rewrite、access写法
改版时保留原链接,创建新的URL的方法
rsync中文手册之使用rsync实现网站镜像和备份linux
rsync 数据同步使用详解
linux URL的301重定向代码分析
eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置数据库连接池
Apache服务器二级域名的完美实现

Linux服务器 中的 Linux系统中两种替代“花生壳”的办法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 96 ::
收藏到网摘: n/a

家里有机器,拨号上网,有独立的ip, 开了很多服务,想在外面随时访问怎么办?出去的时候记住连线的ip? 万一断了线,自动重连以后ip也就变了,那么解决方法也许是用“花生壳”软件。花生壳也有Linux版本,确实是一个选择,但是它相当于是把你的ip publish到网上的,假设你自己对自己的安全不是很放心(况且你也不知道花生壳是否搜集了你的什么信息),而且你的目的也只是小范围使用(比如就你,你家人或者几个要好的朋友)的话,那么这个动态ip完全可以通过个人邮件的方式来传播,本人简单摸索了两个解决方案,一是基于knemo+kmail,二是基于 udev+mail+exim4,下面简单介绍一下:

1. knemo + kmail

knemo是kde下面监控网络的软件,支持事件触发,kmail是kde下面的邮件客户端,支持dcop的脚本调用,配置的步骤如下:

创建一个自动获得拨号连接ip并通过kmail发送的脚本:

#!/bin/bash

FROM="none"

TO="[email protected]"

CC="[email protected]"

BCC=""

SUBJECT="Today's PPP address"

sleep 10s

MESSAGE=`/sbin/ifconfig   /bin/sed -e '/P-t-P/!d' -e 's/^[[:space:]]* inet addr://g' -e 's/[[:space:]]*P-t-P:.*Mask:.*$//g'`

ATTACHMENT="[] []"

dcop kmail MailTransportServiceIface "sendMessage(QString, QString, QString, QString, QString, QString, KURL::List)" "$FROM" "$TO" "$CC" "$BCC" "$SUBJECT" "$MESSAGE" $ATTACHMENT

然后将其作为knemo配置的notification当中的对应执行的程序即可。knemo配置是在 kcontrol -> internet&network -> network monitor -> Misc 面板上。

2. udev + mail + exim4

第一个方式很简单,但是需要你是使用kde并且时刻将自己的桌面开着(因为比需要有knemo和kmail),第二个方式是获取内核的硬件变动,万一断了重新连接,/sys/下面设备文件发生变化就触发,不依赖X和桌面系统。

exim4的配置这里就不说了,自己网上看。

对应的发送的脚本( /XXXXX/ppp-address.sh )修改如下:

#!/bin/bash

FROM="none"

TO="[email protected]"

CC="[email protected]"

BCC=""

SUBJECT="Today's PPP address"

sleep 10s

MESSAGE=`/sbin/ifconfig   /bin/sed -e '/P-t-P/!d' -e 's/^[[:space:]]* inet addr://g' -e 's/[[:space:]]*P-t-P:.*Mask:.*$//g'`

echo "$MESSAGE"   /usr/bin/mail -s "$SUBJECT" -c "$CC" -b "$BCC" "$TO"

udev 规则添加:/etc/udev/rules.d/ 下面添加一个规则文件如 z100_ppp_ip_letter.rules 内容为:

ACTION=="add", SUBSYSTEM=="net", KERNEL=="ppp[0-9]", RUN+="/XXXXX/ppp-address.sh"