首页 | IT新闻 | 硬件 | 操作系统 | 开发 | 网络编程 | 数据库 | 热门框架 | 网络安全 | 组网 | 建站指南 | 网页制作 | 特效 | 实用技巧 | 服务器 | 办公 | QQ | 探索 | 社区
|
如何实现Linux防火墙让远程办公有安全
目前,通过VPN来实现远程办公是比较常见的方法。该方法的不足之处主要有两点:第一,若要保证VPN用户随时访问内网,内网的计算机必须长时间保持开机状态,造成大量资源的浪费;第二,用户连入VPN之后,只能把远程计算机当成网络邻居中的一员来互传资料。 利用Linux实现远程办公可以弥补VPN方式的以上两点不足:可以实现按需开机;可以直接控制和监测远程计算机,以及远程计算机的桌面。此方法中Linux服务器必须是连接在公网上的一台机器,它“扮演”了网关和防火墙的角色,并且负责唤醒内网的计算机。 环境配置 1.安装wakelan软件 wakelan是Linux下的一款远程唤醒程序,能唤醒与Linux服务器相连的计算机,并且其网卡MAC地址为指定地址。命令格式是“wakelan MAC地址”。 wakelan的安装方法如下:
2.添加广播路由 在此实际工作环境中,局域网内的机器都通过交换机连在Linux服务器的eth1网卡上。Linux服务器要对整个局域网进行广播,需要添加以下一条路由:
把上面这条路由添加到/etc/rc.local中,即使Linux服务器重新启动,也可以自动添加该路由。 3.配置DHCP 在DHCP的配置文件/etc/dhcpd.conf中指定内网Windows机器的IP地址、域服务器地址、域名、网关、DNS服务器等信息,使其启动后可以自动获取指定的IP。当然,如果每台计算机上都有固定的IP地址,则配置DHCP服务的过程可以忽略。 /etc/dhcpd.conf中配置的内容如下:
用命令“/etc/rc.d/init.dhcpd start”启动DHCP服务,使DHCP可以正常运行。 4.配置iptables,设置DNAT功能 DNAT功能可以将访问Linux网关特定端口的所有连接请求都转到内网指定机器的相应端口上(内网用户的连接请求除外)。 举例如下:
5.在内网Windows上安装远程控制软件 常用的远程控制软件有pcAnywhere、Radmin等,用户可以根据自己的喜好安装其中一个,本人使用的是Radmin。用来远程办公的计算机和受控制的计算机都必须安装这个软件,不同的是被控端除了安装这个软件以外,还需要启动服务端程序。 6.远程唤醒内网机器 远程启动的前提是Windows机器支持网卡唤醒,并且BIOS的设置要符合网卡唤醒标准。在任何能上网的地方用SSH方式登录到Linux机器,执行远程唤醒命令:
如果电脑启动了,则证明前面的配置成功。要远程登录,用户还必须记住一堆难记的MAC地址,这是很麻烦的,而且不安全。我们可以通过Web服务来改进这个功能。 安全、便捷的Web启动方式 如果Linux中已经安装了Apache和PHP,就可以通过配置Apache和编写PHP脚本来实现更安全地远程启动。 1.编写PHP脚本 在Apache的DocumentRoot下面建立一个wakeup目录,在这个目录下建立index.php文件,内容如下:
现在,只要在浏览器中输入一个网址(事先在Apache中设置好的),比如,http://platinum.3322.org/wakup,就可以实现远程启动了。这样虽然很方便,但是任何人都可以访问,还是不安全,需要添加Apache认证来解决这个问题。 2.添加Apache认证 修改Apache的配置文档/usr/local/apache2/conf/httpd.conf,添加如下代码:
在wakeup目录中建立.htaccess文件,并编辑:
接下来,就是创建一个专门用来存放密码的文件apache.users:
要使配置生效,必须重启Apache服务。这样,再用http://platinum.3322.org/wakeup访问,就会需要密码认证了.不知道密码的人是无法进入系统开启指定计算机的。 启动远程计算机的认证画面
通过以上方法远程启动计算机后,启动事先装好的远程控制软件,输入Linux服务器的地址,就可以操作远程的电脑platinum了,如图2所示。操作完成后,如果不再需要计算机继续工作,可以通过远程控制软件关闭远程的计算机,避免了资源浪费。 用Radmin远程控制电脑platinum 相关链接
频道热门
热门新闻
|
精粹集锦
特别推荐
频道精选
|