当前位置:首页 > 嵌入式 > 嵌入式软件
[导读] 目前Linux 发行版本主要分成两个系列2.4内核(red hat 9 、 red hat 8.0、fedora core 1 、RHEL 3)、2.6内核(fedora core 2-6 、RHEL 4)。首先介绍前者。这里以red hat 9为

 目前Linux 发行版本主要分成两个系列2.4内核(red hat 9 、 red hat 8.0、fedora core 1 、RHEL 3)、2.6内核(fedora core 2-6 、RHEL 4)。首先介绍前者。这里以red hat 9为准。

1. 安装基础软件包libglade和libglade-devel

libglade和libglade-devel是一个用于 GTK+/GNOME 程序。从 xxx.glade 文件自动生成程序界面或界面中的一部分的库。 Glade 设计初衷就是要把 GTK+/GNOME 程序的界面描述从源代码里分离出来,即使用 xxx.glade 文件来描述界面,而不是把生成界面的 c 代码写再源代码中,额外的好处就是使得后期修改程序界面非常容易,你只需要使用 Glade 来调整界面即可(实际是仅仅修改了 xxx.glade 文件,无需对源程序做改动)。另外,使用 .glade 文件来生程序界面并不会影响到你的程序的效率,因为你只需要一次装入所有界面,然后在需要时直接使用。如果在系统安装时已经把安装上了,那么我们就可以直接安装VPN客户端软件。否则,可以通过Rat Het Linux图形界面下的“添加/删除应用程序”工具进行安装。具体方法是,选择“主选单”→“系统设置”→“添加/删除应用程序”,在弹出的界面中选中“GNOME Software Development”,单击“更新”即可。如图1。

?/P>

图1安装libglade和libglade-devel

如果您的Linux 发行版本没有这两个软件也可以通过网络安装。下载网址:http://ftp.gnome.org/pub/GNOME/sources/libglade/2.0/libglade-2.0.1.tar.bz2

2. 安装DKMS 模块软件包

DKMS(Dynamic Kernel Module Support)动态内核模块支持。旨在创建一个内核相关模块源可驻留的框架,以便在升级内核时可以很容易地重建模块。这将允许 Linux 供应商提供较低版本的驱动程序,而无需等待新内核版本发行,同时还可以省去尝试重新编译新内核模块的客户预期要完成的工作。Oikawa等人在1996年提出一种与LKM类似的动态核心模块(DKMs)技术。与LKM一样,DKMs以文件的形式存储并能在系统运行过程中动态地加载和卸载。DKMs由一个用户层的DKM服务器来管理,并非由内核来管理。当核心需要某模块时,由DKM服务器负责把相应的DKM加载;当核心的内存资源紧缺时,由DKM服务器负责卸载一个没有被使用的DKM。缺点是所有的DKM是存储在本地系统上的,占用了大量宝贵的存储空间。DKMS工作原理见图2 。

?/P>

图2 DKMS工作原理

#wget http://www.city-fan.org/ftp/contrib/drivers/pptp/dkms-2.0.13-1.noarch.rpm

#rpm --install dkms-2.0.13-1.noarch.rpm

3. 安装、查看ppp内核模块

#wget http://www.city-fan.org/ftp/contrib/drivers/pptp/kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm

#rpm --install kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm

# dkms status

# kernel_ppp_mppe, 0.0.5, 2.4.20-8, athlon: installed (original_module exists)

4. 升级ppp软件包

#wget ftp://rpmfind.net/linux/ASPLinux/contribs/9/i386/ppp-2.4.2-0.20030925asp.i386.rpm

#rpm --upgrade ppp-2.4.2-0.20030925asp.i386.rpm

5.安装VPN客户端软件pptp-linux和图形前端

#wget ftp://fr2.rpmfind.net/linux/sourceforge/p/pp/pptpclient/pptp-linux-1.5.0-1.i386.rpm

#rpm --install pptp-linux-1.4.0-1.i386.rpm

#wget ftp://ftp.pbone.net/mirror/ftp.sourceforge.net/pub/sourceforge/p/pp/pptpclient/pptp-php-gtk-20040102-rc1.i386.rpm

rpm --install pptp-php-gtk-20040102-rc1.i386.rpm

6.启动图形前端pptpconfig[!--empirenews.page--]

在命令行下使用命令“pptpconfig”即可启动启动图形前端。如图3 。

 Server(服务器)选项

?/P>

图3 Server (服务器)选项

说明:在服务器选项卡中,我们需要配置一些要素:

Name: 连接的名称。你可以随意地对它命名。

Server: 你将连接的VPN服务器,既可以是VPN服务器的IP也可以是名称。

Domain: 如果有的话,是指VPN将连接的域。

Username: 你的VPN或企业内部网登录用户名。

Password: VPN或企业内部网的登录口令。

 Routing(路由)选项

通常我们需要发送All to Tunnel。然而,它可以,也会因VPN而异。与你的网络管理员确定你需要选择单选按钮。如图4 。

?/P>

图4 Routing路由选项

 DNS选项

DNS选项卡通常十分简单;它是自动的,或者我们需要输入一些基本的DNS信息以及可能需要包含的选项。如图5 。

?/P>

图5 DNS选项

 Encryption(加密)选项如图6 。

?/P>

图6 Encryption(加密)选项
[!--empirenews.page--]

说明:加密选项卡比较复杂。有许多选择:

Require Microsoft Point-to-Point Encryption (MPPE):需要微软点对点加密。

Refuse 40-bit Encryption :拒绝40位加密。

Refuse 128-bit Encryption:拒绝128位加密。

Refuse Stateless Encryption:拒绝无状态加密。

这里我们选择需要微软点对点加密。

 Miscellaneous(杂项)选项

选项卡是我们的最后一个选项卡。如图7。

?/P>

?/P>

图7 Miscellaneous(杂项)选项

说明:

Start tunnel when this program starts :自动启动VPN隧道。

Enable connection debugging facilities :显示连接信息。

Reconnect if disconnected :自动重复连接。

7. 启动VPN连接

所有选项完成后点击“Add”按钮,系统会自动连接PPTP VPN服务器。此时屏幕会出现一个

连接状态界面如图8 。

?/P>

图8连接状态界面

从图8 可以看到VPN服务器的IP地址是192.168.0.3 。MPPE加密功能已经启用。VPN接口是PPP1。

此时在PPTP VPN服务器使用ifconfig -a命令查看:

# ifconfig -a

eth0 Link encap:Ethernet HWaddr 00:0C:29:51:8A:2E

inet addr:192.168.1.18 Bcast:192.168.1.255 Mask:255.255.255.0

inet6 addr: fe80::20c:29ff:fe51:8a2e/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:98 errors:0 dropped:0 overruns:0 frame:0

TX packets:89 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:11572 (11.3 KiB) TX bytes:8310 (8.1 KiB)

Interrupt:10 Base address:0x1400

lo Link encap:Local Loopback

inet addr:127.0.0.1 Mask:255.0.0.0

inet6 addr: ::1/128 Scope:Host

UP LOOPBACK RUNNING MTU:16436 Metric:1

RX packets:3967 errors:0 dropped:0 overruns:0 frame:0

TX packets:3967 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:4158080 (3.9 MiB) TX bytes:4158080 (3.9 MiB)

ppp0 Link encap:Point-to-Point Protocol

inet addr:192.168.0.3 P-t-P:192.168.1.128 Mask:255.255.255.255

UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1496 Metric:1

RX packets:30 errors:0 dropped:0 overruns:0 frame:0

TX packets:8 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:3

RX bytes:3132 (3.0 KiB) TX bytes:92 (92.0 b)

ppp1 Link encap:Point-to-Point Protocol

inet addr:192.168.1.129 P-t-P:192.168.0.3 Mask:255.255.255.255

UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1496 Metric:1

RX packets:7 errors:0 dropped:0 overruns:0 frame:0

TX packets:7 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:3

RX bytes:70 (70.0 b) TX bytes:76 (76.0 b)

sit0 Link encap:IPv6-in-IPv4

NOARP MTU:1480 Metric:1

RX packets:0 errors:0 dropped:0 overruns:0 frame:0

TX packets:0 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

其中ppp0是Windows 客户端连接PPTP VPN的接口。Ppp1是Linux客户端连接PPTP VPN的接口。[!--empirenews.page--]

下面我们使用连接状态界面的Ping按钮测试连接状况,如图9 。

?/P>

图9 使用Ping按钮测试连接状况

可以看到Ping 操作成功。

8.断开VPN连接方法

断开VPN连接方法点击“stop”按钮即可,此时pptpconfig状态栏颜色从绿色(运行状态)

转变为蓝色(停止状态),如图10 。

?/P>

图10 断开VPN连接方法

图形前端pptpconfig程序:pptp-php-gtk已经停止更新(2003年12月18日);所以使用2.6内核版本的用户可以使用其更新软件。下面笔者会简单介绍一下安装方法。以Fedora Core 2 为例子:

1. 下载安装相关库文件

#wget http://www.city-fan.org/ftp/contrib/drivers/pptp/libglade-0.17-19.fc6.i386.rpm

#wget http://www.city-fan.org/ftp/contrib/drivers/pptp/libglade-devel-0.17-19.fc6.i386.rpm

#rpm –ivh libglade-devel-0.17-19.fc6.i386.rpm

#rpm –ivh libglade-0.17-19.fc6.i386.rpm

2. 安装DKMS 模块软件包

#wget http://www.city-fan.org/ftp/contrib/drivers/pptp/dkms-2.0.13-1.noarch.rpm

#rpm --install dkms-2.0.13-1.noarch.rpm

3. 下载安装、查看kernel_ppp_mppe 内核模块

#wget http://www.city-fan.org/ftp/contrib/drivers/pptp/kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm

#rpm --install kernel_ppp_mppe-0.0.4-2dkms.noarch.rpm

#modprobe ppp-compress-18 && echo success

success #应当显示success信息#

4. 下载安装ppp软件包

#wget http://www.city-fan.org/ftp/contrib/drivers/pptp/ppp-2.4.4-1.2.fc2.i386.rpm

#rpm --upgrade ppp-2.4.4-1.2.fc2.i386.rpm

5.下载安装VPN客户端软件pptp-linux

#wget ftp://fr2.rpmfind.net/linux/sourceforge/p/pp/pptpclient/pptp-linux-1.5.0-1.i386.rpm

#rpm --install pptp-linux-1.4.0-1.i386.rpm

6. 下载安装辅助软件包

#wget http://www.city-fan.org/ftp/contrib/drivers/pptp/php4-pcntl-4.4.1-2.i386.rpm

#wget http://www.city-fan.org/ftp/contrib/drivers/pptp/php4-pcntl-gtk-1.0.2-2.i386.rpm

#rpm -ivh php4-pcntl-4.4.1-2.i386.rpm

#rpm -ivh php4-pcntl-gtk-1.0.2-2.i386.rpm

7.下载、安装前端GUI软件pptpconfig

#wget http://www.city-fan.org/ftp/contrib/drivers/pptp/pptpconfig-20060821-1.noarch.rpm

#rpm -ivh pptpconfig-20060821-1.noarch.rpm

8. 启动图形前端pptpconfig

在命令行下使用命令“pptpconfig”即可启动启动图形前端。主要界面和2.4 内核版本介绍的基本相同。只是在Encryption(加密)选项如图1 。

?/P>

图11在Encryption(加密)选项
[!--empirenews.page--]

多出一个选项即:Refuse to Authenticate with EAP 〔refuse-eap〕拒绝EAP认证。

linux下要用vpn会用到ppp,但似乎很难与windows作为服务器的vpn服务器沟通:

先看看如何显示调试信息,这对找出问题的出处很有帮助。

在 /etc/ppp/options.pptp里加入

debug dump logfd 2 nodetach

如果有 "Unsupported protocol rcvd [proto=xxxx]" 这样的错误,那么需要在options.pptp里加入这一句

refuse-eap

这个选项即对应以上配置文件的选项。

其他方面图形前端2.6内核版本的pptpconfig和2.4 内核版本的设置是相同的这里就不赘述了。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

CPU亲和度通过限制进程或线程可以运行的CPU核心集合,使得它们只能在指定的CPU核心上执行。这可以减少CPU缓存的失效次数,提高缓存命中率,从而提升系统性能。

关键字: Linux 嵌入式

北京2025年8月15日 /美通社/ -- 今日,以"破局者 • 智行合璧"为主题的2025戴尔科技峰会在北京中国大饭店盛大启幕。作为戴尔科技大中华区极具战略意义的年度旗舰活动,本届峰会吸引逾千名行业...

关键字: 戴尔 全栈 PC ALIENWARE

在Linux系统性能优化中,内存管理与网络连接处理是两大核心领域。vm.swappiness与net.core.somaxconn作为关键内核参数,直接影响系统在高负载场景下的稳定性与响应速度。本文通过实战案例解析这两个...

关键字: Linux 内存管理

北京2025年7月31日 /美通社/ -- 近日,权威咨询机构德本咨询重磅发布"2025中国信创PC市场影响力品牌TOP 10"榜单。软通计算机凭借其迅猛的发展势头、领先的技术整合能力及显著的市场表现...

关键字: 计算机 TOP PC PC市场

对于LLM,我使用b谷歌Gemini的免费层,所以唯一的成本是n8n托管。在使用了n8n Cloud的免费积分后,我决定将其托管在Railway上(5美元/月)。然而,由于n8n是开源的,您可以在自己的服务器上托管它,而...

关键字: 人工智能 n8n Linux

在Linux系统管理中,权限控制是安全运维的核心。本文通过解析/etc/sudoers文件配置与组策略的深度应用,结合某金融企业生产环境案例(成功拦截98.7%的非法提权尝试),揭示精细化权限管理的关键技术点,包括命令别...

关键字: Linux 用户权限 sudoers文件

Linux内核中的信号量(Semaphore)是一种用于资源管理的同步原语,它允许多个进程或线程对共享资源进行访问控制。信号量的主要作用是限制对共享资源的并发访问数量,从而防止系统过载和数据不一致的问题。

关键字: Linux 嵌入式

在云计算与容器化技术蓬勃发展的今天,Linux网络命名空间(Network Namespace)已成为构建轻量级虚拟网络的核心组件。某头部互联网企业通过命名空间技术将测试环境资源消耗降低75%,故障隔离效率提升90%。本...

关键字: Linux 云计算

在Linux内核4.18+和主流发行版(RHEL 8/Ubuntu 20.04+)全面转向nftables的背景下,某电商平台通过迁移将防火墙规则处理效率提升40%,延迟降低65%。本文基于真实生产环境案例,详解从ipt...

关键字: nftables Linux

在Linux设备驱动开发中,等待队列(Wait Queue)是实现进程睡眠与唤醒的核心机制,它允许进程在资源不可用时主动放弃CPU,进入可中断睡眠状态,待资源就绪后再被唤醒。本文通过C语言模型解析等待队列的实现原理,结合...

关键字: 驱动开发 C语言 Linux
关闭