网络服务器基础
核心提示:文章标题:网络服务器基础。Linux是中国站长站的1个技术频道。包括桌面利用,Linux系统治理,内核研究,嵌进式系统和开源等1些基天职类
摘要:要建立1个安全Linux服务器就首先要了解Linux环境下和网络服务相干的配置文件的含义及如何进行安全的配置。在Linux系统中,TCP/IP网络是通过若干个文本文件进行配置的,或许你需要编辑这些文件来完成联网工作,但是这些配置文件大都可以通过配置命令linuxconf(其中网络部份的配置可以通过netconf命令来实现)。本文先容了基本的TCP/IP网络配置文件。
要建立1个安全Linux服务器就首先要了解Linux环境下和网络服务相干的配置文件的含义及如何进行安全的配置。在Linux系统中,TCP/IP网络是通过若干个文本文件进行配置的,或许你需要编辑这些文件来完成联网工作,但是这些配置文件大都可以通过配置命令linuxconf(其中网络部份的配置可以通过netconf命令来实现)。下面先容基本的TCP/IP网络配置文件。
1./etc/conf.modules文件
该配置文件定义了各种需要在启动时加载的模块的参数信息。这里主要侧重讨论关于网卡的配置。在使用Linux做网关的情况下,Linux服务器最少需要配置两块网卡。为了减少启动时可能出现的题目,Linux内核不会自动检测多个网卡。对未将网卡的驱动编译到内核而是作为模块动态载进的系统若需要安装多块网卡,应当在“conf.modules”文件中进行相应的配置。
若设备驱动被编译为模块(内核的模块):对PCI设备,模块将自动检测到所有已安装到系统上的设备;对ISA卡,则需要向模块提供IO地址,以使模块知道在何处寻觅该卡,这些信息在“/etc/conf.modules”中提供。
例如,我们有两块ISA总线的3c509卡,1个IO地址是0x300,另1个是0x320。编辑“conf.modules”文件以下:
aliaseth03c509
aliaseth13c509
options3c509io=0x300,0x320
这是说明3c509的驱动程序应当分别以eth0或eth1的名称被加载(aliaseth0,eth1),并且它们应当以参数io=0x300,0x320被装载,来通知驱动程序到哪里往寻觅网卡,其中0x是不可缺少的。
对PCI卡,仅仅需要alias命令来使ethN和适当的驱动模块名关联,PCI卡的IO地址将会被自动的检测到。对PCI卡,编辑“conf.modules”文件以下:
aliaseth03c905
aliaseth13c905
若驱动已被编译进了内核:系统启动时的PCI检测程序将会自动找到所有相干的网卡。ISA卡1般也能够被自动检测到,但是在某些情况下,ISA卡依然需要做下面的配置工作:
在“/etc/lilo.conf”中增加配置信息,其方法是通过LILO程序将启动参数信息传递给内核。对ISA卡,编辑“lilo.conf”文件,增加以下内容:
append="ether="0,0,eth0ether="0,0,eth1"
注:先不要在“lilo.conf”中加进启动参数,测试1下你的ISA卡,若失败再使用启动参数。
假设用传递启动参数的方法,eth0和eth1将依照启动时被发现的顺序来设置。
2./etc/HOSTNAME文件:
该文件包括了系统的主机名称,包括完全的域名,如:
deep.openarch.com
3./etc/sysconfig/network-scripts/ifcfg-ethN文件:
在RedHat中,系统网络设备的配置文件保存在“/etc/sysconfig/network-scripts”目录下,ifcfg-eth0包括第1块网卡的配置信息,ifcfg-eth1包括第2块网卡的配置信息。
下面是“/etc/sysconfig/network-scripts/ifcfg-eth0”文件的示例:
DEVICE=eth0
IPADDR=208.164.186.1
NETMASK=255.255.255.0
NETWORK=208.164.186.0
BROADCAST=208.164.186.255
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
若希看手工修改网络地址或在新的接口上增加新的网络界面,可以通过修改对应的文件(ifcfg-ethN)或创建新的文件来实现。
DEVICE=namename表示物理设备的名字
IPADDR=addraddr表示赋给该卡的IP地址
NETMASK=maskmask表示网络掩码
NETWORK=addraddr表示网络地址
BROADCAST=addraddr表示广播地址
ONBOOT=yes/no启动时是否是激活该卡
none:不必启动协议
bootp:使用bootp协议
dhcp:使用dhcp协议
USERCTL=yes/no是否是答应非root用户控制该设备
4./etc/resolv.conf文件:
该文件是由域名解析器(resolver,1个根据主机名解析IP地址的库)使用的配置文件,示例以下:
searchopenarch.com
nameserver208.164.186.1
nameserver208.164.186.2
“searchdomainname.com”表示当提供了1个不包括完全域名的主机名时,在该主机名后添加domainname.com的后缀;“nameserver”表示解析域名时使用该地址指定的主机为域名服务器。其中域名服务器是依照文件中出现的顺序来查询的。
5./etc/host.conf文件:
该文件指定如何解析主机名。Linux通过解析器库来取得主机名对应的IP地址。下面是1个“/etc/host.conf”的示例:
orderbind,hosts
multion
ospoofon
“orderbind,hosts”指定主机名查询顺序,这里规定先使用DNS来解析域名,然后再查询“/etc/hosts”文件(也能够相反)。
“multion”指定是否是“/etc/hosts”文件中指定的主机可以有多个地址,具有多个IP地址的主机1般称为多***主机。
“nospoofon”指不答应对该服务器进行IP地址欺骗。IP欺骗是1种攻击系统安全的手段,通过把IP地址假装成别的计算机,来取得其它计算机的信任。
6./etc/sysconfig/network文件
该文件用来指定服务器上的网络配置信息,下面是1个示例:
NETWORK=yes
RORWARD_IPV4=yes
HOSTNAME=deep.openarch.com
GAREWAY=0.0.0.0
GATEWAYDEV=
NETWORK=yes/no网络是否是被配置;
FORWARD_IPV4=yes/no是否是开启IP转发功能
HOSTNAME=hostnamehostname表示服务器的主机名
GAREWAY=gw-ipgw-ip表示网络网关的IP地址
GAREWAYDEV=gw-devgw-dw表示网关的设备名,如:etho等
留意:为了和老的软件相兼容,“/etc/HOSTNAME”文件应当用和HOSTNAME=hostname相同的主机名。
7./etc/hosts文件
当机器启动时,在可以查询DNS之前,机器需要查询1些主机名到IP地址的匹配。这些匹配信息寄存在/etc/hosts文件中。在没有域名服务器情况下,系统上的所有网络程序都通过查询该文件来解析对应于某个主机名的IP地址。
下面是1个“/etc/hosts”文件的示例:
IPAddressHostnameAlias
127.0.0.1LocalhostGate.openarch.com
208.164.186.1gate.openarch.comGate
……………………………
最左侧1列是主机IP信息,中间1列是主机名。任何后面的列都是该主机的别名。1旦配置完机器的网络配置文件,应当重新启动网络以使修改生效。使用下面的命令来重新启动网络:
/etc/rc.d/init.d/networkrestart
8./etc/inetd.conf文件
尽人皆知,作为服务器来讲,服务端口开放越多,系统安全稳定性越难以保证。所以提供特定服务的服务器应当尽可能开放提供服务必不可少的端口,而将与服务器服务无关的服务封闭,比如:1台作为www和ftp服务器的机器,应当只开放80和25端口,而将其他无关的服务如:fingerauth等服务关掉,以减少系统漏洞。
而inetd,也叫作“超级服务器”,就是监视1些网络要求的守护进程,其根据网络要求来调用相应的服务进程来处理连接要求。inetd.conf则是inetd的配置文件。inetd.conf文件告知inetd监听哪些网络端口,为每个端口启动哪个服务。在任何的网络环境中使用Linux系统,第1件要做的事就是了解1下服务器到底要提供哪些服务。不需要的那些服务应当被制止掉,最好卸载掉,这样黑客就少了1些攻击系统的机会。查看“/etc/inetd.conf”文件,了解1下inetd提供哪些服务。用加上注释的方法(在1行的开头加上#号),制止任何不需要的服务,再给inetd进程发1个SIGHUP信号。
第1步:把文件的许可权限改成600。
[root@deep]#chmod600/etc/inetd.conf
第2步:确信文件的所有者是root。
[root@deep]#stat/etc/inetd.conf
第3步:编辑“inetd.conf”文件(vi/etc/inetd.conf),制止所有不需要的服务,如:ftp、telnet、shell、login、exec、talk、ntalk、imap、pop⑵、pop⑶、finger、auth,等等。假设你觉得某些服务有用,可以不制止这些服务。但是,把这些服务制止掉,系统受攻击的可能性就会小很多。改变后的“inetd.conf”文件的内容以下面所示:
#Tore-readthisfileafterchanges,justdoa'killall-HUPinetd'
http://www.fw8.net/
TAG:网络,服务器,地址,文件,主机名
评论加载中...
|