在 一般情況下,一般用戶通過執行“su -”命令、輸入正確的root密碼,可以登錄為root用戶來對系統進行管理員級別的配置。但是,為了更進一步加強系統的安全性,有必要建立一個管理員的 組,只允許這個組的用戶來執行“su -”命令登錄為root用戶,而讓其他組的用戶即使執行“su -”、輸入了正確的root密碼,也無法登錄為root用戶。在UNIX下,這個組的名稱通常為“wheel”。
首先我們創建兩個普通的用戶tom john
[root@www ~]# useradd tom
[root@www ~]# passwd tom
輸入你的密碼
[root@www ~]# useradd john
[root@www ~]# passwd john
輸入你的密碼
[root@www ~]# usermod -g wheel tom 將tom用戶加入到wheel組中
[root@www ~]# vi /etc/pam.d/su ← 打開這個配置文件找到這句話在第六行將其前面的#注釋掉
# auth required pam_wheel.so use_uid
[root@www ~]# echo “SU_WHEEL_ONLY yes” >> /etc/login.defs
然後你可以分別用tom和john登陸,沒有加入到wheel組的用戶,執行“su -”命令,即使輸入了正確的root密碼,也無法登錄為root用戶
在系統出現錯誤或有重要通知發送郵件給root的時候,讓系統自動轉送到我們通常使用的郵箱中,這樣方便查閱相關報告和日志。
[root@www ~]# vi /etc/aliases
在這兩句下面mailer-daemon: postmaster
postmaster: root
加入這句話root:
[email protected] 這裡寫自己郵箱
[root@www ~]# newaliases 重建aliasesdb
[root@www ~]# echo test | mail root 發送測試軟件給root
[8] 定義yum的非官方庫
在服務器構建的過程中,我們將要用到的一些工具不存在於CentOS中yum的官方庫中,所以需要定義yum的非官方庫文件,讓一些必需的工具通過yum也能夠安裝。
[root@sample ~]# vi /etc/yum.repos.d/dag.repo ← 建立dag.repo,定義非官方庫
[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
enabled=1
[root@sample ~]# rpm –import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt ← 導入非官方庫的GPG
[9] 停止打印服務
如果不准備提供打印服務,停止默認被設置為自動啟動的打印服務。
[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(當前打印服務自啟動被禁止中)
[10] 停止ipv6
在CentOS默認的狀態下,ipv6是被啟用的狀態。因為我們不使用ipv6,所以,停止ipv6,以最大限度保證安全和快速。
首先再次確認一下ipv6功能是不是被啟動的狀態。
[root@www ~]# ifconfig -a ← 列出全部網絡接口信息
sit0 Link encap:IPv6-in-IPv4 ← 確認ipv6是被啟動的狀態
[root@www ~]# vi /etc/modprobe.conf← 修改相應配置文件,添加如下行到文尾:
alias net-pf-10 off
alias ipv6 off
[root@www ~]# shutdown -r now ← 重新啟動系統,使設置生效
修改/etc/yum.repos.d/CentOS-Base.repo,將鏡象站點地址改為在中國的鏡象站點地址。不然我們通過yum安裝軟件速度會極慢。修改如下
# CentOS-Base.repo
#
# This file uses a new mirrorlist system developed by Lance Davis for CentOS.
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#
[base]
name=CentOS-$releasever – Base
baseurl=http://mirrors.shlug.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
protect=1
#released updates
[updates]
name=CentOS-$releasever – Updates
baseurl=http://mirrors.shlug.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
protect=1
#packages used/produced in the build but not released
[addons]
name=CentOS-$releasever – Addons
baseurl=http://mirrors.shlug.org/centos/$releasever/addons/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
protect=0
#additional packages that may be useful
[extras]
name=CentOS-$releasever – Extras
baseurl=http://mirrors.shlug.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
protect=0
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever – Plus
baseurl=http://mirrors.shlug.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
protect=1
#contrib – packages by Centos Users
[contrib]
name=CentOS-$releasever – Contrib
baseurl=http://mirrors.shlug.org/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
protect=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
更新系統[root@www ~]#yum -y upgrade
一些安全的設置
1、用防火牆關閉不須要的任何端口,別人PING不到服務器,威脅自然減少了一大半
防止別人ping的方法:
1)命令提示符下打
echo 1 > /proc/sys/net/ipv4/icmp_ignore_all
2)用防火牆禁止(或丟棄) icmp 包
iptables -A INPUT -p icmp -j DROP
3)對所有用ICMP通訊的包不予響應
比如PING TRACERT
2、更改SSH端口,最好改為10000以上,別人掃描到端口的機率也會下降
vi /etc/ssh/sshd_config
將PORT改為1000以上端口
同時,創建一個普通登錄用戶,並取消直接root登錄
useradd ‘username'
passwd ‘username'
vi /etc/ssh/sshd_config
在最後添加如下一句:
PermitRootLogin no #取消root直接遠程登錄
3、刪除系統臃腫多余的賬號: userdel adm userdel lp userdel sync userdel shutdown userdel halt userdel news userdel uucp userdel operator userdel games userdel gopher userdel ftp 如果你不允許匿名FTP,就刪掉這個用戶帳號 groupdel adm groupdel lp groupdel news groupdel uucp groupdel games groupdel dip groupdel pppusers
4、更改下列文件權限,使任何人沒有更改賬戶權限: chattr +i /etc/passwd chattr +i /etc/shadow chattr +i /etc/group chattr +i /etc/gshadow
5、chmod 600 /etc/xinetd.conf