前 言
在 CentOS 安装好之后,安全性以及对硬件的适应性方面,可能并不完全符合我们的实际情况。在这里,对新的 CentOS 系统进行初始环境设置将以如下方面为原则:
1,为了安全,尽最大可能将访问限制限制到可能的最大程度;
2,为了节省内存及 CPU 使用率(以及安全方面的考虑),尽最大可能将不需要的服务关闭;
3,为了减少误操作可能带来的损失,平时通过 wheel 组用户登录进行系统管理;
4,为了让系统变的更加轻便、快速,将内核中不需要的模块卸载;
…………
CentOS 5.4 的安装后初始环境设定
安装网上有许多教程,这里不再赘述。安装完毕重新启动系统后,出现如下的状态:
CentOS release 5.4 (Final)
Kernel 2.6.18-164.el5 on an i686
sample login: ← 根据安装时网络设置的情况的不同,这里以“sample”为例,默认为“localhost”,其位置显示的是你设置好的主机名。
[1] 系统的登录与退出
sample login: root ← 用root用户来登录系统,输入用户名root
Password: ← 在这里输入安装时设置的root密码,输入时密码不会被显示
[root@sample ~]# ← root用户登录成功,提示符为“#”。若一般用户登录成功后,提示符为“$”
[root@sample ~]# exit ← 退出系统,或者用logout。login是登陆,logout就是退出了。
sample login: ← 退出系统成功
[2]建立 ~/.vimrc,设置家目录的永久行号 (.vimrc为使用VI的环境设置文件,自己可根据须要设置。)
[root@sample ~]# vi /root/.vimrc 注意:这里用的绝对路径指定在root的家目录,根据自己须要更改。.vimrc行号文件一定要建在用户的家目下,而且只对该用户有效。
在文件里添加set nu,然后保存退出。
[3]把系统语言改成英文版(主要是为了方便更好的学习) 我认为如果想学习好linux,最好不要用中文
[root@sample ~]#vi /etc/sysconfig/i18n 修改如下:
把默认的 LANG="zh_CN.UTF-8" 注释掉,改成LANG="en"。注释可以在前面加“#”号!
[4] 一般用户的建立与删除
[root@sample ~]# useradd centospub ← 建立用户名为 centospub 的一般用户,这里根据自己须要更改用户
[root@sample ~]# passwd centospub ← 为用户 centospub 设置密码
Changing password for user centospub.
New UNIX password: ← 输入密码(密码不会被显示)
Retype new UNIX password: ← 再次输入密码确认两次密码一致
passwd: all authentication tokens updated successfully. ← 密码设置成功
[root@sample ~]# userdel -r centospub ← 删除用户名为 centospub 的一般用户。注意,这里加参数-r是因为要连同其用户家目录一起删除。
[5] 通过一般用户登录为root用户
因为root用户对系统具有全权的操作权限,为了避免一些失误的操作,建议在一般情况下,以一般用户登录系统,必要的时候需要root操作权限时,再通过“su -”命令来登录为root用户进行操作。
[centospub@sample ~]$ ← 提示符为“$”,说明当前状态为一般用户centospub登录在系统中
[centospub@sample ~]$ su - ← 输入登录为root用户的命令。提示:如果当前为root用户,要切到普通用户,则输入“su 普通用户”,此时则不须密码。
Password: ← 输入root密码(密码不会被显示),回车
[root@sample ~]# ← 成功登录为root用户,提示符变为“#”
[root@sample ~]# exit ← 回到一般用户的登录状态。这里也不可以用"logout",不信你试一下,会报错,原因想必你应该知道!
[centospub@sample ~]$ ← 提示符变为“$”,回到了一般用户centospub登录系统的状态
[6] 建立管理员组内一般用户
在 一般情况下,一般用户通过执行“su -”命令、输入正确的root密码,可以登录为root用户来对系统管理员级别的配置。但是,为了更进一步加强系统的安全性,有必要建立一个管理员的组,只允许这个组的用户来执行“su -”命令登录为root用户,而让其他组的用户即使执行“su -”、输入了正确的root密码,也无法登录为root用户。在UNIX下,这个组的名称通常为“wheel”。
[root@sample ~]# usermod -G wheel centospub ← 将一般用户 centospub 加在管理员组wheel组中。参数-G 修改用户所属的附加群组。
[root@sample ~]# vi /etc/pam.d/su ← 打开这个配置文件
#auth required /lib/security/$ISA/pam_wheel.so use_uid ← 找到此行,去掉行首的“#”
auth required /lib/security/$ISA/pam_wheel.so use_uid ← 变为此状态(在第6行的位置)
[root@sample ~]# echo "SU_WHEEL_ONLY yes" >> /etc/login.defs ← 利用管道符添加语句到行末,可以查看/etc/login.defs以检查
以上操作完成后,可以再建立一个新用户,然后用这个新建的用户测试会发现,没有加入到wheel组的用户,执行“su -”命令,即使输入了正确的root密码,也无法登录为root用户,提示su: incorrect password(不正确的密码)
[7]屏蔽掉ctrl+alt+del重启电脑的快捷键。安全第一,防止习惯性的和windows一样重启电脑!
#vi /etc/inittab
:32 将第32行注释掉,在行首加#号;
#ca::ctrlaltdel:/sbin/shutdown -t3 -r now
[8] root邮件的转送
在系统出现错误或有重要通知发送邮件给root的时候,让系统自动转送到我们通常使用的邮箱中,这样方便查阅相关报告和日志。
[root@sample ~]# vi /etc/aliases ← 编辑aliases,添加如下行到文尾
root: [email protected] ← 加入自己的邮箱地址
[root@sample ~]# newaliases ← 重建aliasesdb
/etc/aliases: 79 aliases, longest 19 bytes, 825 bytes total
[root@sample ~]# echo test | mail root ← 发送测试邮件给root
如果成功的话,会在刚刚填入的 [email protected] 的邮箱中收到测试的邮件。
[9] 配置或修改网卡配置文件
不联网是很痛苦的,所以必须作一些基本的设置,我这里以局域网为例,如果采用ADSL请参考其它相关文章。网卡的配置有多咱方式,分别介绍:
1.临时配置网卡IP地址 注意:既然是临时的,那么注销和重启将失效。
[root@sample ~]# ifconfig eth0 192.168.1.1 netmask 255.255.255.0
#ifup eth0 启用eth0网卡 (ifdown eth0 关闭)
2.图形命令配置
#setup 或者:netconfig 或者:#system-config-network-tui
如果netconfig命令找不到,则挂载光盘,安装netconfig包
启动网卡
#service network restart
3.脚本配置或修改网卡配置文件
[root@sample ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 这里eth0为第一块网卡,自己根本须要配置多个时更改。
DEVICE=eth0 //设备名
ONBOOT=yes //开机启动
BOOTPROTO=static //IP地址的获取方式(静态和DHCP)
IPADDR=192.168.10.3 //IP地址
NETMASK=255.255.255.0 //子网掩码
注意:以上几种方法配置好后都必须重启网卡服务:#service network restart (共有参数,start/stop/restart/status ,推荐重启用restart)
[10]停止打印服务
如果不准备提供打印服务,停止默认被设置为自动启动的打印服务。
[root@sample ~]# /etc/rc.d/init.d/cups stop ← 停止打印服务
Stopping cups: [ OK ] ← 停止服务成功,出现“OK”
[root@sample ~]# chkconfig cups off ← 禁止打印服务自动启动
[root@sample ~]# chkconfig --list cups ← 确认打印服务自启动设置状态
cups 0:off 1:off 2:off 3:off 4:off 5:off 6:off ← 0-6都为off的状态就OK(当前打印服务自启动被禁止中)
[11]停止ipv6
在CentOS默认的状态下,ipv6是被启用的状态。因为我们不使用ipv6,所以,停止ipv6,以最大限度保证安全和快速。
首先再次确认一下ipv6功能是不是被启动的状态。
[root@sample ~]# ifconfig -a ← 列出全部网络信息
eth0
Link encap:Ethernet HWaddr 00:0C:29:B6:16:A3
inet addr:192.168.0.13 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:feb6:16a3/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:84 errors:0 dropped:0 overruns:0 frame:0
TX packets:93 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:10288 (10.0 KiB) TX bytes:9337 (9.1 KiB)
Interrupt:185 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:12 errors:0 dropped:0 overruns:0 frame:0
TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:952 (952.0 b) TX bytes:952 (952.0 b)
sit0
Link encap:IPv6-in-IPv4 ← 确认ipv6是被启动的状态
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)
然后修改相应配置文件,停止ipv6。
[root@sample ~]# vi /etc/modprobe.conf ← 修改相应配置文件,添加如下行到文尾:
alias net-pf-10 off
alias ipv6 off
[root@sample ~]# shutdown -r now ← 重新启动系统,使设置生效
最后确认ipv6的功能已经被关闭。
[root@sample ~]# ifconfig -a ← 列出全部网络接口信息
eth0 Link encap:Ethernet HWaddr 00:0C:29:B6:16:A3
inet addr:192.168.0.13 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:feb6:16a3/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:84 errors:0 dropped:0 overruns:0 frame:0
TX packets:93 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:10288 (10.0 KiB) TX bytes:9337 (9.1 KiB)
Interrupt:185 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:12 errors:0 dropped:0 overruns:0 frame:0
TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:952 (952.0 b) TX bytes:952 (952.0 b)
(确认ipv6的相关信息没有被列出,说明ipv6功能已被关闭。)
[12]关闭增强安全 (SELinux) 的缺省策略
禁用SELinux方法有两种:
1、命令方式下编辑/etc/sysconfig/selinux,把SELINUX=permissive改成SELINUX=disabled。需要提醒的是,修改SELINUX或者SELINUXTYPE后,只有在下次重启机器的时候修改方可生效。
2、图形界面方式修改SELinux,这里不再赘述。(其实有好多配置都可在图形下操作的)