linux系统优化项

linux新安装调优及安全设置:
1、关闭selinux
2、设定运行级别为3
3、精简开机自启动
4、linux系统安全最小原则申明
5、更改ssh服务器远程登陆配置
6、利用visudo命令控制用户对系统命令的使用权限
7、liux中文显示
8、设置linux服务器时间同步
9、历史记录数和登陆超时时间环境变量的设置
10、调整linux文件描述符的数量
11、linux内核参数优化
12、定时清理邮件服务临时目录和垃圾文件
13、隐藏linux版本信息
14、锁定关键系统文件,防止篡改
15、清除多余账号
16、升级具有典型漏洞的软件服务版本
17、禁止系统被ping

详细解释:
关闭selinux:
可以使用命令setenforce    0 (这个命令只是临时关闭)如果想要永久关闭需要更改配置文件
使用sed命令    (sed -i ”/SELINUX/s/enforcing/disabled/g  /etc/selinux/conf“),更改后需要重新启动系统。

2、设定运行级别为3
首先查看系统当前的运行级别
使用runlevel命令查看linux的运行级别,也可以查看/etc/inittab文件,若有下面两项就无需修改*这个一般不会怎么更改
# multi-user.target: analogous to runlevel 3
# graphical.target: analogous to runlevel 5

3、精简开机自启动。
精简开机自启动之前需要了解系统默认需要哪些服务
1、sshd    (远程服务这个必须开启)
2、rsyslog    (日志相关软件,这是操作系统提供的一种机制,系统的守护进程通常会使用rsyslog程序将各种程序信息写入到系统日志中。)
3、network    (系统的网络不管是动态地址还是静态地址都要开启,一般推荐使用静态地址)
4、crond    (系统计划)
5、systat    (systat是一个软件包,包含检测系统性能及效率的一组工具)
6、iostat    (检测cpu吞吐率)
7、mpstat    (提供单个多个的数据)
8、sar        (负责搜集存储系统活跃信息)
使用chkconfig  --list
netconsole      0:关    1:关    2:关    3:关    4:关    5:关    6:关
network         0:关    1:关    2:开    3:开    4:开    5:开    6:关
#这里可以看到network是打开的
4、linux系统安全最小原则申明
*这里主要遵循一个最小服务就行了不需要的服务不要安装




优化sshd的服务
1、修改ssh端口/etc/ssh/sshd.conf
Port   53335  #一般更改端口不要使用默认端口
2、不允许root用户登陆
PermitRootlogin      no
3、禁止空密码登陆
PermintEmptyPasswords   no
4、禁止使用DNS(这个是解决ssh连接慢点问题)
5、不开启GSSAP认证(解决连接慢的问题)
GSSAPIAuthentication    no
6、解决第一次连接输入yes问题
vim     /etc/ssh/ssh_conf
StrictHostKeyChecking    no
更改后重新启动服务
/etc/init.d/sshd    reload    #reload为平滑升级不影响其他已连接的用户。


6、利用visudo命令控制用户对系统命令的使用权限
这个首先是确定自定义用户所需要的权限可以使用的命令(比如不让自定义用户使用rm删除命令)
首先创建用户
useradd   test
使用visudo命令在99行后添加以下代码
 test  all=(all)   /usr/bin/*,!/usr/bin/rm
 #这段代码的意思是test用户可以在任何地方使用/usr/sbin/目录下的命令但是不能使用rm命令/usr/sbin/目录下也有许多命令所以在控制用户权限的时候需要确定用户不能使用的命令
 
7、liux中文显示
在使用更改的时候需要查看是否是中文
echo  $LANG    使用过后查看的如果不是zh_CN.utf8如果是,这个就是中文字符集所以不需要更改,如果不是就需要更改
echo    "LANG=”zh_CN.UTF8"">>/etc/sysconfig/il8n
source    /etc/sysconfig/il8n

8、设置linux服务器时间同步
首先查看系统时间对不对
[root@localhost sysconfig]# date
2019年 09月 25日 星期三 01:01:46 CST
#这个时间是正确的,如果不正确做如下操作
[root@localhost sysconfig]# /usr/sbin/ntpdate   ntp.sjtu.edu.cn       #ntp.sjtu.edu.cn这个为网上的时间服务器地址
25 Sep 00:58:49 ntpdate[1405]: adjust time server 120.25.115.20 offset 0.009207 sec


9、历史记录数和登陆超时时间环境变量的设置
[root@localhost ~]# export  TMOUT=10
[root@localhost ~]#  等待输入超时:自动登出
#这里只是做临时变量,如果想要永久生效就需要吧这个写入到/etc/profile文件中去
[root@localhost ~]# export   HISTSIZE=5
[root@localhost ~]# history
  549  date
  550  export  TIMEOUT=10
  551  export  TMOUT=10
  552  export   HISTSIZE=5
  553  history
  #这个变量设置了以后使用history命令就只会显示5行命令,如果想要永久生效需要更改/etc/profile文件
 
 10、调整linux文件描述符的数量
 ulimit  -n  #可以查看文件描述符默认是1024个文件描述符
 [root@localhost ~]# ulimit  -n   65535
[root@localhost ~]# ulimit  -n   
65535
#这样只是临时更改(方法一)
vim      /etc/security/limits.conf
*       -       nofile          65535
方法二可以把ulimit  -n  65535#这个命令加入到开机文件中去
echo    “ulimit  -n  65535” >>/etc/inittab

11、linux内核参数优化修改文件/etc/sysct.conf
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
net.ipv4.tcp_max_tw_buckets = 10000
net.ipv4.tcp_sack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_rmem = 4096 87380 4194304
net.ipv4.tcp_wmem = 4096 16384 4194304
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.core.netdev_max_backlog = 262144
net.core.somaxconn = 262144
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 30
net.ipv4.ip_local_port_range = 1024 65535

12、定时清理邮件服务临时目录和垃圾文件
find  /var/spool/postfix/maildrop  #这个目录很容易被垃圾文件填满
find    /var/spool/postfix/maildrop   -type  f  |xarges  rm -fr
 
13、隐藏linux版本信息
uname  -a    #查看linux版本
Linux localhost.localdomain 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux


14、锁定关键系统文件,防止篡改
chattr  +i    /etc/password    #这个命令使用后就不能更改文件内容了-i 解锁

15、清除多余账号
userdel        用户

17、禁止系统被ping
echo    "net.ipv4.icmp_echo_ignore_all=1">>/etc/sysctl.conf
sysctl  -p

原文地址:https://www.cnblogs.com/DB-MYSQL/p/11585023.html