① 、同步系统时间,来压实系统的安全性

原稿链接:http://os.51cto.com/art/201312/423095.htm

CentOS6.x基础工作条件陈设

Centos 6.5 优化
一些基础优化和安全设置
 那几个也挺好

 

说明:时常玩Linux系统的情侣多多少少也领悟些系统参数优化和什么进步系统安全性,系统私下认可的一部分参数都以比较保守的,所以大家得以由此调整系统参数来增强系统内部存款和储蓄器、CPU、内核实资金源的占有,通过禁止使用不须要的服务、端口,来增加系统的安全性,更好的发挥系统的可用性。通过祥和对Linux通晓,对系统调优做了如下小结:

壹 、系统设置

操作系统:CentOS 6.5_x64最小化安装

系统设置时使用最小化原则,只设置base services。安装收尾后首先运营yum update 更新系统,重启。

壹 、主机名设置 

 

[root@localhost~]# vi /etc/sysconfig/network 
HOSTNAME=test.com 
[root@localhost~]# hostname test.com  #临时生效 

二 、基本连串陈设

2、关闭SELinux

① 、同步系统时间

 我是把selinux设置为  permissive

ntpdate cn.pool.ntp.org;hwclock –systohc

[root@localhost~]# vi /etc/selinux/config 
SELINUX=disabled 
[root@localhost~]# setenforce #临时生效 
[root@localhost~]# getenforce #查看selinux状态 

将系统时间一起写入crontab,每一日零时机关校时。

叁 、清空防火墙并安装规则

crontab -e

 这一个作为参照,关闭不用的端口即可

0 * * * * ntpdate cn.pool.ntp.org;hwclock –systohc

[root@localhost~]# iptables -F   #清楚防火墙规则 
[root@localhost~]# iptables -L   #查看防火墙规则 
[root@localhost~]# iptables -A INPUT -p tcp --dport 80 -j ACCEPT 
[root@localhost~]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT 
[root@localhost~]# iptables -A INPUT -p tcp --dport 53 -j ACCEPT 
[root@localhost~]# iptables -A INPUT -p udp --dport 53 -j ACCEPT 
[root@localhost~]# iptables -A INPUT -p udp --dport 123 -j ACCEPT 
[root@localhost~]# iptables -A INPUT -p icmp -j ACCEPT 
[root@localhost~]# iptables -P INPUT DROP 
[root@localhost~]# /etc/init.d/iptables save 

 

图片 1

② 、禁止使用不须要的序列服务

④ 、添加普通用户并举办sudo授权管理

chkconfig –level 0123456 cups off

[root@localhost~]# useradd user 
[root@localhost~]# echo "123456" | passwd --stdin user  #设置密码 
[root@localhost~]# vi /etc/sudoers  #或visudo打开,添加user用户所有权限 
root    ALL=(ALL)       ALL 
user    ALL=(ALL)       ALL 

chkconfig –level 0123456 ip6tables off

五 、禁止使用root远程登录

#如未启用nfs,则相关服务能够关闭

 

chkconfig –level 0123456 netfs off

[root@localhost~]# vi /etc/ssh/sshd_config 
PermitRootLogin      no 
PermitEmptyPasswords no #禁止空密码登录 
UseDNSno #关闭DNS查询 

chkconfig –level 0123456 nfslock off

陆 、关闭不供给开机自运转服务

#如无邮件须求,则相关服务可以关闭

 图片 2

chkconfig –level 0123456 postfix off

⑦ 、删除不须要的类别用户

 

 图片 3

叁 、删除不需求的种类用户

⑧ 、关闭重启ctl-alt-delete组合键

/usr/sbin/userdel adm

[root@localhost ~]# vi /etc/init/control-alt-delete.conf 
#exec /sbin/shutdown -r now "Control-Alt-Deletepressed"  #注释掉 

/usr/sbin/userdel lp

九 、调整文件讲述符大小 

/usr/sbin/userdel shutdown

[root@localhost ~]# ulimit –n #默认是1024 
1024 
[root@localhost ~]# echo "ulimit -SHn 102400">> /etc/rc.local   #设置开机自动生效 

/usr/sbin/userdel halt

⑩ 、去除系统相关新闻 

/usr/sbin/userdel news

  1. [root@localhost ~]# echo “Welcome to Server” >/etc/issue 
  2. [root@localhost ~]# echo “Welcome to Server” >/etc/redhat-release 

/usr/sbin/userdel uucp

 11、修改history记录 

/usr/sbin/userdel operator

  1. [root@localhost ~]# vi /etc/profile  #修改记录13个 
  2. HISTSIZE=10 

/usr/sbin/userdel games

 1贰 、同步系统时间 

/usr/sbin/userdel gopher

  1. [root@localhost ~]# cp /usr/share/zoneinfo/Asia/Shanghai/etc/localtime  #设置Shanghai时区 
  2. [root@localhost ~]# ntpdate cn.pool.ntp.org ;hwclock–w  #一块时间并写入blos硬件时间 
  3. [root@localhost ~]# crontab –e     #安装职务安排每一日零点同步二次 
  4. 0 * * * * /usr/sbin/ntpdate cn.pool.ntp.org ; hwclock -w 

#如不使用ftp服务则删除ftp用户

 1叁 、内核参数优化 

/usr/sbin/userdel ftp

[root@localhost ~]# vi /etc/sysctl.conf    #末尾添加如下参数 
net.ipv4.tcp_syncookies = 1            #1是开启SYN Cookies,当出现SYN等待队列溢出时,启用Cookies来处,理,可防范少量SYN攻击,默认是0关闭 
net.ipv4.tcp_tw_reuse = 1             #1是开启重用,允许讲TIME_AIT sockets重新用于新的TCP连接,默认是0关闭 
net.ipv4.tcp_tw_recycle = 1            #TCP失败重传次数,默认是15,减少次数可释放内核资源 
net.ipv4.ip_local_port_range = 4096 65000  #应用程序可使用的端口范围 
net.ipv4.tcp_max_tw_buckets = 5000     #系统同时保持TIME_WAIT套接字的最大数量,如果超出这个数字,TIME_WATI套接字将立刻被清除并打印警告信息,默认180000 
net.ipv4.tcp_max_syn_backlog = 4096    #进入SYN宝的最大请求队列,默认是1024 
net.core.netdev_max_backlog =  10240  #允许送到队列的数据包最大设备队列,默认300 
net.core.somaxconn = 2048              #listen挂起请求的最大数量,默认128 
net.core.wmem_default = 8388608        #发送缓存区大小的缺省值 
net.core.rmem_default = 8388608        #接受套接字缓冲区大小的缺省值(以字节为单位) 
net.core.rmem_max = 16777216           #最大接收缓冲区大小的最大值 
net.core.wmem_max = 16777216           #发送缓冲区大小的最大值 
net.ipv4.tcp_synack_retries = 2        #SYN-ACK握手状态重试次数,默认5 
net.ipv4.tcp_syn_retries = 2           #向外SYN握手重试次数,默认4 
net.ipv4.tcp_tw_recycle = 1            #开启TCP连接中TIME_WAIT sockets的快速回收,默认是0关闭 
net.ipv4.tcp_max_orphans = 3276800     #系统中最多有多少个TCP套接字不被关联到任何一个用户文件句柄上,如果超出这个数字,孤儿连接将立即复位并打印警告信息 
net.ipv4.tcp_mem = 94500000 915000000 927000000 
net.ipv4.tcp_mem[0]:低于此值,TCP没有内存压力; 
net.ipv4.tcp_mem[1]:在此值下,进入内存压力阶段; 
net.ipv4.tcp_mem[2]:高于此值,TCP拒绝分配socket。内存单位是页,可根据物理内存大小进行调整,如果内存足够大的话,可适当往上调。上述内存单位是页,而不是字节。 

#如不使用同步服务则删除sync用户

 至此CentOS
6.5_x64最小化安装系统大旨优化调整实现,需求重启下系统。

/usr/sbin/userdel sync

 

 

4、处理/etc/sysctl.conf

编辑/etc/sysctl.conf添加如下内容,保存退出。

net.ipv4.tcp_max_syn_backlog = 4096  #限定SYN队列的长度

net.ipv4.ip_forward = 0  #不准ip转载功用

net.ipv4.conf.all.send_redirects = 0  #禁止转会重定向报文

net.ipv4.conf.default.send_redirects = 0

net.ipv4.conf.all.rp_filter = 1  #打开反向路径过滤效果,防止ip地址欺骗

net.ipv4.conf.default.rp_filter = 1

net.ipv4.conf.all.accept_source_route = 0  #禁止包罗源路由的ip包

net.ipv4.conf.default.accept_source_route = 0

net.ipv4.conf.all.accept_redirects = 0  #禁绝接收路由重定向报文,幸免路由表被恶意更改

net.ipv4.conf.default.accept_redirects = 0

net.ipv4.conf.all.secure_redirects = 0  #只接受来自网关的“重定向”icmp报文

net.ipv4.conf.default.secure_redirects = 0

net.ipv4.icmp_echo_ignore_broadcasts = 1  # 禁止ICMP重定向

 

变动文件属性

chmod 600 /etc/sysctl.conf

 

5、只允许root执行cron/at

echo root > /etc/cron.allow

echo root > /etc/at.allow

chown root:root /etc/cron.allow

chown root:root /etc/at.allow

chmod 400 /etc/cron.allow

chmod 400 /etc/at.allow

 

⑥ 、修改系统Banner

编纂 /etc/issue、/etc/issue.net七个文本删除全部系统有关音信,提议改为“Welcome to Server”。

 

7、处理/etc/hosts.equiv

A、不需要/etc/hosts.equiv

预先生成/etc/hosts.equiv文件,并且安装权限为0000,幸免被写入”++”。

B、需要/etc/hosts.equiv

·文件属主确认保证为root,设置权限为0600,幸免被写入”++”。

·倘若运用NIS或然NIS+的话,此文件中的组应该是便于管理的。

·注重主机使用人名

·任几时候都不应该出现”+”字符

·文件中并非使用’!’ 和’#’符号,因为在该公文中那并不意味着注释新闻

·文件伊始字符不应当为’-‘.,请查阅C8

·确认保障该文件的访问权限被设置成600。

·在历次安装补丁程序或操作系统之后,都应该重新检查该公文夹的装置情形

 

8、处理/etc/aliases

修改/etc/aliases文件,注释掉decode、games、ingress、system、toor、manager,在文书最终进入root: <填写管理员邮箱>,保存退出。使用/usr/bin/newaliases命令激活新布局。确认保证文件属主为root。

 

9、禁止ctrl+alt+del重启

CentOS 6.x :

编辑/etc/init/control-alt-delete.conf,注释

start on control-alt-delete

exec /sbin/shutdown -r now “Control-Alt-Delete pressed”

保存退出,重启后生效。

 

CentOS 5.x :

编辑/etc/inittab,注释

ca::ctrlaltdel:/sbin/shutdown -t3 -r now 

保存退出。执行/sbin/init q ,使设置生效。

 

⑩ 、设置用户口令安全部制

编写 /etc/login.defs,修改如下内容

PASS_MAX_DAYS   90 #口令须要修改的气数,依照实际情形设置

PASS_MIN_DAYS   7 #口令不可修改的天数,依照实际景况设置

PASS_MIN_LEN    7 #口令最小长度

PASS_WARN_AGE   28 #告诫期限

 

1壹 、禁止root直接登陆

echo “console” > /etc/securetty

 

1二 、修改/etc/rc.d/init.d目录中脚本文件权限,确认保证只有root帐号能够实施。

chmod -R 700 /etc/rc.d/init.d/*

 

1叁 、禁止在/etc/passwd中含有个人新闻

 

14、调整history大小

编辑/etc/profile,将HISTSIZE改为0或适当的值,保存退出。

清空当前history,执行history -c 。

当下写入history,执行history -w 。

 

③ 、平时运行

① 、查找无分明属主的文本

find / -nouser -nogroup

 

② 、查找全数用户可写文件和目录

find / -type f -perm +002

find / -type d -perm +002

 

③ 、查找空口令用户,应该为空

awk -F: ‘($2 == “”) { print $1 }’ /etc/shadow

 

四 、查找UID为0的用户,应该唯有root

awk -F: ‘($3 == 0) { print $1 }’ /etc/passwd

 

伍 、检查/etc/profile,禁止$PATH含当前目录”.”,也可经过上面包车型地铁吩咐查找

echo $PATH | egrep ‘(^|:)(\.|:|$)’

 

陆 、查找具有suid、sgid权限的文件

find / -perm -6000

 

⑦ 、检查除/dev以外,是不是有特有的块文件

find / \( -type b -o -type c \) -print | grep -v ‘^/dev/’

 

④ 、首要文件及目录权限配置标准

文件或目录名称

所属

权限

/etc/passwd

root:root

-rw-r–r–

/etc/shadow

root:root

-rw-r–r–

/etc/group

root:root

-rw-r–r–

/etc/hosts

root:root

-rw-r–r–

/etc/services

root:root

-rw-r–r–

/tmp

root:root

-rw-rw-rwt

/var/tmp

root:root

-rw-rw-rwt

 

 

 

五、其他

① 、安全体署中央规则

只对外开放所须要的服务,关闭全体不须求的劳务。对外提供的劳务越少,所面临的表面勒迫越小。

将所需的差别服务分布在差别的主机上,那样不但增强系统的性子,同时有利于安顿和管理,减小系统的云浮风险。

 

相关文章