博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux(centos)系统安装后必做的十三点基础安全优化(安装后必备)
阅读量:6120 次
发布时间:2019-06-21

本文共 4260 字,大约阅读时间需要 14 分钟。

hot3.png

系统安装后不要急于部署,先把下面十三条基础优化做了(安装后必备)

1. 不用root 登录,添加普通用户,用sudo授权管理

[root@centos6 ~]#useradd liuwei  添加用户[root@centos6 ~]# vi /etc/sudoers在第98行下面加入root    ALL=(ALL)       ALLliuwei   ALL=(ALL)      /bin/ls ,/bin/cat   //这个是给liuwei这个用户 添加  /bin/ls ,/bin/cat 这两个命令的执行权限

 

2.更改默认的远程连接SSH服务端口和禁止root远程登录

[root@centos6 ~]# vi /etc/ssh/sshd_config#       $OpenBSD: sshd_config,v 1.80 2008/07/02 02:24:18 djm Exp $# This is the sshd server system-wide configuration file.  See# sshd_config(5) for more information.# This sshd was compiled with PATH=/usr/local/bin:/bin:/usr/bin# The strategy used for options in the default sshd_config shipped with# OpenSSH is to specify options with their default value where# possible, but leave them commented.  Uncommented options change a# default value.#下面这是把22端口更改52113Port 52113  #这是不允许远程登录PermitRootLogin no#这个不是不允许空密码PermitEmptyPasswords no#不用DNSUseDNS noGSSAPIAuthentication no

重启ssh服务

 service sshd restart 或 /etc/init.d/sshd restart

3.定时更新服务器时间

#confab -e进入cronta编辑模式,使用方法同vi输入 0 23 * * * ntpdate asia.pool.ntp.org >> /var/log/ntpdate.log保存退出这样就完成了你的系统到每天23:00去asia.pool.ntp.org 同步时间,并将同步的日志放到/var/log/ntpdate.log三、定时同步时间(在/etc/crontab中添加) * * * * * /usr/sbin/ntpdate 210.72.145.44 > /dev/null 2>&1

 

4.配置yum更新源,从国内更新源下载安装rpm包

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo

 

5.关闭selinux关闭iptables(工作场景有wan ip 一般要开,高并发除外)

修改/etc/selinux/config 文件将SELINUX=enforcing改为SELINUX=disabled重启机器即可(注意:生产环境中一般不能随便重启机器)setenforce 更改selinux状态setenforce 0 #设置SELinux 成为permissive模式setenforce 1 设置SELinux 成为enforcing模式getenforce 也可以用这个命令检查/etc/init.d/iptables status 会得到一系列信息,说明防火墙开着。/etc/init.d/iptables stop 关闭防火墙service iptables restart 重启iptables/etc/init.d/iptables restart     重启iptables1.重启后永久性生效:  开启:chkconfig iptables on  关闭:chkconfig iptables off2. 即时生效,重启后失效:  开启:service iptables start  关闭:service iptables stop

6.调整描述符的数量,进程及文件打开都会消耗描述符

[root@centos6 ~]# ulimit –n  查看描述符数量65535怎么调整vim /etc/security/limits.conf把下面一句加到文件的最后一行*              -       nofile          65535或者:ech0 '*              -       nofile          65535'  >> /etc/security/limits.conf

7.定时清理 /var/spool/clientmquene/目录垃圾文件,防止inodes节点占满

8.精简开机启动服务(crod,sshd,network,rsyslog)

for name in ‘chkconfig --list | grep –vE “crond|sshd|network|rsyslog”|awk ‘{print $1}’’;do chkconfig &name off;done

9.linux 内核参数优化 /etc/sysctl.conf,执行sysctl p 生效

 首先打开/etc/sysctl.conf文件,查看如下两行的设置值,这里是:  kernel.shmall = 2097152kernel.shmmax = 4294967295 如果系统默认的配置比这里给出的值大,就不要修改原有配置。同时在/etc/sysctl.conf文件最后,添加以下内容:  fs.file-max = 6553600  kernel.shmmni = 4096  kernel.sem = 250 32000 100 128  net.ipv4.ip_local_port_range = 1024 65000  net.core.rmem_default = 4194304  net.core.rmem_max = 4194304  net.core.wmem_default = 262144  net.core.wmem_max = 262144  这里的“fs.file-max = 6553600”其实是由“fs.file-max = 512 * PROCESSES”得到的,我们指定PROCESSES的值为12800,即为“fs.file-max =512 *12800”。  sysctl.conf文件修改完毕后,接着执行“sysctl -p”使设置生效。

10,更改字符集,支持中文,但是建议还是用英文字符 防止乱码

解决中文问题[liuwei@centos6 ~]$ vi /etc/sysconfig/i18n改成这个LANG=zh_CN.UTF-8[liuwei@centos6 ~]$source /etc/sysconfig/i18n

 

11.锁定关键系统文件

chattr +i  /etc/passwd /etc/group /etc/gshadow /etc/inittab[root@centos6 ~]# chattr +i /etc/passwd /etc/shadow 给这个两个文件加上锁[root@centos6 ~]# useradd liuuseradd: cannot open /etc/passwd[root@centos6 ~]# chattr -i /etc/passwd /etc/shadow     给这个两个文件加解锁[root@centos6 ~]# useradd liu[root@centos6 ~]# chattr -i /etc/passwd /etc/shadow   把这个加锁命令移动一下【因为大家都知道这个是解锁的命令】-bash: /usr/bin/chattr: 没有那个文件或目录[root@centos6 ~]# mv /usr/bin/liuwei /usr/bin/chattr

范例:

# chattr +i .bash_logout     ——>添加一个隐藏的“i”属性,后面再细讲

#lsattr -a             ——>将当前目录的文件或目录下的文件所有属性(包括隐藏属性)列出 

-------------- ./.

-------------- ./..

---i---------- ./.bash_logout

-------------- ./.bash_profile

-------------- ./.bashrc

12,清空 /etc/issue ,去除系统以及内核版本登录前的版本提示

[root@centos6 ~]# > /etc/issue    隐藏系统的版本信息[root@centos6 ~]#

 

13.实战经验分享(属用性能调优)  

Linux 用户线程数限制导致的 java.lang.OutOfMemoryError: unable to create new native thread
异常,需要做以下优化,把普通用户创建线程数调大一点(更加实际需求调整)如果没有调整默认普通用户是1024(太小了)

# vi /etc/security/limits.d/90-nproc.conf# Default limit for number of user's processes to prevent# accidental fork bombs.# See rhbz #432903 for reasoning.root soft nproc unlimited* soft nproc 20480

 

 

 

 

 

 

 

 

转载于:https://my.oschina.net/u/1266221/blog/753610

你可能感兴趣的文章
『Python Kivy』官方乒乓球游戏示例解析
查看>>
Linux中 终端、作业控制与守护进程
查看>>
C++程序设计教程[钱能]
查看>>
redis常用命令
查看>>
重读《JAVA与模式》之三
查看>>
小白学jquery Mobile《构建跨平台APP:jQuery Mobile移动应用实战》连载三(
查看>>
初步试用Faye——基于发布和订阅模型的消息系统
查看>>
spring事物的七种事物传播属性行为及五种隔离级别
查看>>
vbs启动 burp强制utf-8编码 保证不出现乱码
查看>>
HibernateSessionFactory创建的Session是否单例
查看>>
W3C标准及规范
查看>>
Java基础:IO 流中的 flush
查看>>
在eclipse 设置编辑区、控制台、xml等文本文件字体大小
查看>>
SpringBoot多数据源事物失效
查看>>
使用Java调用谷歌搜索
查看>>
Python的 bitarray 库测试。。
查看>>
使用EXTJS写的注册窗口
查看>>
一图学Python
查看>>
WEB术语常识
查看>>
PHP中->和::有什么区别?
查看>>