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

Linux服务器
实用技巧:配置Linux操作系统环境变量
Linux和Windows系统升级的最大不同
Linux操作系统下以太网卡的安装及配置
Linux(CentOS)服务器/VPS上安装DirectAdmin
Linux服务器攻防技术介绍
Linux系统上配置Nginx+Mongrel cluster
使用Webmin轻松管理Linux系统
linux服务器异常故障解决一例
linux服务器每秒并发处理数的计算方法
Linux系统下Telnet服务器配置
在Fedora 10下面配置SVN服务器
unix下的hosts文件
linux下设置JDK和TOMCAT
32位Linux设置超大Oracle SGA的分析
菜鸟入门之centos的文件夹权限继承
技巧:30分钟打造Linux的VPN服务器
Linux系统管理员新手易犯的十种错误
在linux下使用noatime提升文件系统性能
利用ffmpeg在linux下将mp3文件转换为wma
linux系统下dell PowerEdge2650服务器BIOS升级

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 64 ::
收藏到网摘: 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"