体验Ubuntu做服务器

有好几台机器,希望可以将其中一台机器作为服务器,为其他机器提供路由,共享等服务,为了稳定和安全,选择linux作为服务器系统,Ubuntu是非常易用的一个Linux的发行版,我就采用它来做。

硬件
首先当然是要有一台可以安装Ubuntu的机器(一般不是忒新的机器都可以安装),并且有两个网卡,作为两个网段的网关。

安装配置
直接安装Ubuntu7.04,安装很顺利,很快安装完了。然后配置网络,将网卡eth0配置为192.168.1.234,因为原来的网段就是192.168.1.0/24,另一块网卡eth1配置为网段192.168.2.0/24的网关192.168.2.1,这样所有其他机器都是局域网192.168.2.0/24内的客户机了。

用route -n命令可以看到路由表的信息:

内核 IP 路由表
目标            网关            子网掩码        标志  跃点   引用  使用 接口
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 eth2
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 eth0
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth0

一个是192.168.1.0/24的网关,一个是192.168.2.0/24的网关,还有一个是回路,最后一个是默认路由。

然后是IP转发,很多资料说使用下面的命令打开I转发:

sudo echo "1" > /proc/sys/net/ipv4/ip_forward

但不知道为什么在Ubuntu下总是说没有操作的权限,只好另寻他路:

修改/etc/sysctl.conf,在文件的末尾加上:

net.ipv4.ip_forward=1

顺便也加上了:
net.ipv4.tcp_syncookies=1
net.ipv4.icmp_echo_ignore_broadcasts=1

这个配置会在系统启动的时候设置系统参数,这样IP转发就完成了。

安装防火墙管理工具FireStarter,但是启动时发生以下错误:

the device eth0 is not ready

提示启动失败。使用以下命令即可:

udo sed -i~ "s/\/sbin\/ifconfig/env LANG=en_US \/sbin\/ifconfig/g" /etc/firestarter/firestarter.sh