Linux系统 /etc目录下主要配置文件解释
这些都是比较有实用性的系统配置,收藏下,以备不时之需!以下是etc下重要配置文件解释:
1、/etc/hosts
#文件格式: ipaddress hostname aliases
#文件功能: 提供主机名到ip地址的对应关系,建议将自己经常使用的主机
# 加入此文件中,也可将没有dns记录的机器加入到此文件中, 会方便网络应用
系统默认有以下两条,建议保留:
#cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
新添加如:{必须有三个字段:ip、fqdn(完全合格域名/全称域名)、hostname}
210.38.206.21 jx.sgu.edu.cn jx
2、/etc/resolv.conf
文件功能:dns客户机配置文件,设置dns服务器的ip地址及dns域名
与它有相关的文件:/etc/host.conf
文件格式:
domainname 域名
search 域名
nameserver primary_dns_server_ip_address
nameserver second_dns_server_ip_address
其中domainname和search可同时存在,也可只有一个;nameserver可指定多个
示例文件内容:
search sgu.edu.cn
nameserver 202.96.128.86
3、 /etc/host.conf
功能:指定主机名查找方法,通常指先查找文件/etc/hosts,找不到时再向dns服务器请求
(对于大多数用户不用改动此文件内容)
文件内容可以有以下这些:
order bind,hosts
multi on
nospoof on
解释:
order bind,hosts——>指定主机名查询顺序,这里规定先使用dns来解析域名,然后再查询“/etc/hosts”文件(也可以相反)
multi on——>指定是否“/etc/hosts”文件中指定的主机可以有多个地址,拥有多个ip地址的主机一般称为多穴主机
nospoof on——>指不允许对该服务器进行ip地址欺骗(ip欺骗是一种攻击系统安全的手段,通过把ip地址伪装成别的计算机,来取得其它计算机的信任)
4、/etc/xinetd.conf
旧版本或其他版本为inetd.conf,在redhat新的版本中 /etc/inetd.conf文件已经没有了,取而代之的是/etc/xinetd.d下的文件,每一个文件就是一个用inetd方式启动的服务,与以前的inetd.conf的作用相同,只是将文件的格式变了
它是internet 的超级服务器,保存了系统提供internet服务的数据库,通过这个文件,你可以对这些服务加以控制,如打开/关闭某项服务,使它们更为安全的运行。相关程序: /usr/sbin/inetd
相应服务:
telnet、ftp、nrpe、pop3····
基中每项有效的条目中都应该包含以下的域:
* 服务名
* 套接字类型
* 协议类型
* wait/nowait[.max]
* 用户名[.组]
* 服务程序
* 服务程序的参数
——服务名是在/etc/services文件中经过定义的有效服务名称(如telnet,echo等)
——套接字类型域包含以下几种:
* stream - stram
* dgram - datagram
* raw - raw
* rdm - reliabl! y delivered message
* seqpacket - sequenced packet
——协议类型域必须是已经在/etc/protocols文件中定义过的类型(如最常见的是tcp和udp),sun-rpc服务要在协议前加上“rpc/”(如rpc/tcp或者rpc/udp)
——wait 只用于数据包套接字,其它的都使用nowait参数。如果服务是多线程的,意味着在与对端建立连接后将释放套接字xinetd进程可以通过些套接字接收更多的消息,这些用“nowait”条目。如果服务是单线程,表示服务将在同一个socket中处理所有的外来数据包,直到超时,这种情况下使用“wait”条目。max参数,用一个点与wait/nowait隔开,定义了inetd进程在一分钟之内最大产生的实例数目
——用户域定义了服务的使用者。组参数,通过点与用户名隔开,定义了除/etc/passwd文件中之外的可以运行服务的组id
——服务程序是在套接字请求时执行的程序的完整路径。如果是inted进程内置的服务,此处应为“internally”
——服务程序参数提供程序运行的所需的参数,同样的,如果是内置服务,此处也为“internally”
看一个telnet实例:
/usr/sbin/tcpd in.telnetd
* 服务名: telnet
* 套接字类型: stream
* 协议类型: tcp
* wait/nowait[.max]: nowait
* 用户名[.组]: root
* 服务程序: /usr/sbin/tcpd
* 参数: in.telnetd
服务的开启与关闭
非常简单,只要在想要关闭的服务前面加上一个#注释掉即可,如:
#telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd
这时,telnet服务已经关闭了!如果想开启,只需要把#去掉
5、/etc/hosts.allow 和 /etc/hosts.deny
/etc/hosts.allow 设置允许使用xinetd服务的机器,如: all:210.38即允许所有来自210.38.x.x的请求
/etc/hosts.deny 设置不允许使用xinetd服务的机器
6、/etc/networks
旧的或其他版本linux还会有这个文件/etc/netmasks
文件主要功能是路由表,其他的功能,如添加静态路由、删除路由等可自行参考man
一些例子:
#route add -net dlrin gw dlrin-gw #route add -net 210.38.206.21 netmask 255.255.255.0 eth0 #route add -net 210.38.206.23 netmask 255.255.255.0 gw 210.38.206.254 #route add -net *** gw 202.118.66.254 #route add default gw 202.118.66.1
7、/etc/passwd ——用户口令文件
/etc/issue 系统进站提示信息(主控台用)
/etc/issue.net telnet时显示信息
/etc/motd 用户进入系统后的提示信息(可以为空)
/etc/ld.so.conf 动态链接库文件目录列表
8、/etc/exports
nfs(network file system) server 输出文件系统表,其定义格式:
#cat /etc/exports
/mnt/iso 210.38.206.0/24(rw,sync)
其中参数有:
设置选项 说明
sync 设置nfs服务器同步写磁盘,这样不会轻易丢失数据,nfs服务器建议使用该选项
ro 设置输出的共享目录只读,与 rw捡能同时使用
rw 设置输出的共享目录可读写 ,与ro不能共同使用
9、 /etc/bashrc 和 /etc/csh.cshrc 和 /etc/profile
其中/etc/bashrc [全称为 bash(bourne again shell) runtime command shell script] 用的最多
系统用户默认的环境设置:path, umask, term type
/etc/csh.cshrc [csh runtime command]
10、 /etc/pam.d/login
root可登录的终端设备列表, tty[1-8] 为主控台上的设备,ttyp* (linux)远程登录终端(telnet、ssh)设备
/etc/nologin
系统在要关机时不希望用户登录进来,就产生此文件,此文件内容为显示给用户的有关拒绝连接的信息,用户此时就不能进入系统。当系统重新启动时如果有此文件,则机器启动后任何用户不能使用系统,此时可考虑从软盘或光盘引导删除此文件,然后再重新启动系统
/etc/security
设定那些终端可以让root登录,一般情况下设定为只有console上的用户可能用root,而在redhat下使用了pam机制,相应的文件为/etc/securetty
/etc/x11/* xfree86窗口配置文件
/etc/shells
用户可以使用的shell列表,如果强行修改/etc/passwd文件,也可以使用不在列表中的shell程序,但对于shell不在此列表中的用户将无法使用ftp连接本系统
/etc/mtab
系统在启动时创建的信息文件,内容为已经mount的文件系统,此文件内容是动态更新的,可参考/proc/mounts