关闭SElinux功能

•修改配置文件使其永远生效

第一种修改方法vi

vi /etc/sysconfig/selinuc 或者 vi /etc/selinux/config
修改:
SELINUX=disabled

第二种修改方法

sed -i 's/SELINUX=enforcing/SELINUX=disabled' /etc/selinux/conf # 直接修改读取内容而不输出到终端

•临时关闭SElinux

setenforce 0 # 临时关闭SElinux
getenforce # 查看SElinux状态

•提示:修改完SElinux配置文件后重启系统才会生效,可以配合使用setenforce 0这个命令,这样在重启前后都可以使SElinux处于关闭状态

设定系统运行级别为3(文本模式)

•系统运行级别为3代表使用文本命令行模式来管理linux系统

grep 3:initdefault /etc/inittab
3:initdefault # 系统默认的运行级别,工作中常用,即文本模式 runlevel # 查看当前系统运行级别 init 5 # 只有安装桌面才可以执行startx

•七种运行级别:

运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
运行级别2:多用户状态(没有NFS)
运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
运行级别4:系统未使用,保留
运行级别5:X11控制台,登陆后进入图形GUI模式
运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动

•chkconfig操作命令:

chkconfig --list  #显示所有运行系统服务的运行状态
chkconfig --list sshd #只显示指定的系统服务sshd的运行状态
chkconfig --add sshd #增加一个系统服务sshd,默认所有级别都关闭
chkconfig --level xx sshd on/off #设置sshd的运行级别开启或关闭
chkconfig --del sshd #删除系统服务sshd

精简开机系统自启动

•五个企业环境中开机自启动的服务;

sshd:远程连接linux服务器必须开启

rsyslog:日志相关软件

network:网络服务

crond:系统和用户配置的计划任务周期性进行

sysstat:收集系统性能数据,有利于判断系统是否正常

•sysstat软件包介绍:

安装:yum -y install sysstat

sadc工具:

位于/usr/lib64/sa/目录下,sadc是将数据写在一个二进制文件中,如果要查看内容要用sadf工具查看

执行/usr/lib64/sa/sadc -
输出会保存在/var/log/sall中
需要用sadf或者sar -f /var/log/sa/sa11 # -f 从一个二进制文件中入去内容
Linux 2.6.32-504.30.3.el6.x86_64 (alex) 2016年06月11日 _x86_64_ (1 CPU) # 输出信息

应用举例:

1、查看cpu使用率:
sar -u 1 5 # 表示每一秒统计一次,一共统计5次
2、查看网络吞吐量
sar -n DEV 2 5 # 表示每两秒统计一次,一共统计5次

iostat:可以收集cpu使用状况,磁盘IO状态

mpstat:一般用于多处理器中cpu使用率的统计

详细参考:http://www.361way.com/use-sysstat/1521.html

•sysstat软件包继承的主要工具有:

iostat提供CPU使用率以及硬盘吞吐效率的数据

mpstst提供单个或多个处理器的数据

sar收集、报告并存储系统活跃信息

•设置开机自启动服务的常见方法

方法一:ntsysv

方法二:setup

查看运行级别是3的服务:

chkconfig --list |grep 3:启用

关闭iptables防火墙

对于高并发高流量的业务不适合开启iptables防火墙,一般这种业务需要在前端配置硬件防火墙

#关闭iptables防火墙
/etc/init.d/iptables stop
#关闭开机自启动
chkconfig iptables off
#查看iptables启动级别
chkconfig --list |grep iptables

更改ssh服务器端远程登入配置

•windows服务器端远程端口:3389,管理员为administrator,普通用户为guest;linux服务器远程端口为:22,管理员为root,普通用户随意

vi /etc/ssh/sshd_config
Port 2222 #修改自己的ssh端口
PermitRootLogin no #禁止用root登入自己的系统
PermitEmptyPasswords no #禁止密码为空的用户登入
UseDNS no #对远程主机进行反向解析,会减慢ssh连接速度
GSSAPIAuthentication no #解决ssh远程连接慢的问题

•更高级的ssh安全策略

更改ssh的监听ip

通过防火墙限制使用内网ip连接服务器

通过拨号VPN服务器接通内网然后访问这些服务器

通过sudo控制用户对系统命令的使用权限

•为了安全以及管理方便,需要将使用root权限的用户加入sudo管理,用户可使用自己的账号登入系统,用root的权限来管理系统

visudo == vi /etc/sudoers
#第98行
root ALL=(ALL) ALL
alex ALL=(ALL) /usr/sbin/useradd,/usr/sbin/userdel #用户alex能够使用useradd和userdel命令

•给普通用户创建root的权限

visudo
# 第98行
alex ALL=(ALL) NOPASSWD:ALL #alex拥有root所有权限不用输入密码

查看/root目录时需要sudo ls /root 通过sudo命令获取权限

注意:通过sudo授权后命令格式为:sudo 命令;

sudo -l 可以查看该用户被授权的sudo命令集合

linux中文显示设置

•GBK用2个字节表示一个中文,UTF-8用3个字节表示一个中文

vi /etc/sysconfig/i18n
LANG="zh_CN.GBK" # 中文格式的GBK
LANG="zh_CN.UTF-8" # utf-8编码 <------------推荐
LANG="en_US.GBK" # 英文格式的GBK
LANG="en_US.UTF-8" # utf-8编码

•使用secureCRT可以设置编码格式,必须和系统设置的一样

Option--Session Option--Appearance
选项--会话选项--外观-- 字符编码

设置linux服务器时间同步

linux的时间同步服务为ntp服务,机器少时使用,机器多了可以布置内网的时间服务器

which ntpdate
/usr/sbin/ntpdate #输出
#更新系统时间
/usr/sbin/ntpdate time.nist.gov 或者 ntp.sjtu.edu.cn 可以去网上找合适的时间服务器

历史记录数以及登入超时环境变量设置

查看历史命令:history

vi /etc/profile
TIMEOUT=10 #链接超时时间
HISTSIZE=10 #命令行的历史记录数
HISTFILESIZE=10 #历史记录文件的命令数量

调整linux系统文件描述符数量

文件描述符是由无符号整数表示的句柄,进程使用它来标识打开的文件;对于内核而言,所有打开的文件都是通过文件描述符引用的,打开一个文件,内核向进程返回一个文件描述符。。

查看文件描述符的命令

ulimit -n

方法一:
vi /etc/security/limits.conf
* - nofile 65535 # 最后一行添加
方法二:
echo '* - nofile 65535' >> /etc/security/limits.conf

配置完成后需要重新登入才会生效

加入开机启动项

vi /etc/rc.local
ulimit -HSn 65535

linux服务器内核参数优化

pass

定时清理邮件服务临时目录垃圾文件

CentOS 5 系统默认安装Sendmail服务,邮件临时存放位置:/var/spool/clientmqueue

CenterOS 6没有安装Sendmail服务,而是改装Postfix服务,邮件临时存放位置:/var/spool/postfix/maildrop

临时存放位置如果被垃圾文件填满会导致inode数量不够用,需要手动清理

•Centos 5

find /var/spool/clientmqueue/ -type f |xargs rm -f

•Centos 6

find /var/spool/postfix/maildrop -type f |xargs rm -f

df -i 查看磁盘inode的总量、使用量、剩余量

隐藏linux版本的信息(登入时)

登入显示的版本信息存放在:/etc/issue

cat /etc/issue
# 输出
CentOS release 6.6 (Final)
Kernel \r on an \m

# 执行命令
> /etc/issue # 清除文件内容,再次登入时则不显示linux的版本信息

锁定关键系统文件,防止被提权篡改

chstt,文件在/user/bin/下,为了防止被修改可以做软连

上锁系统文件chattr,以后任何用户修改这个文件都不会成功,除非解锁

+:代表在原有属性的基础上

i:immutable不可修改的

chattr +i /etc/passwd

解锁系统文件

chattr -i /etc/passwd

查看文件的属性lsattr

lsattr /etc/passwd

清除多余的系统虚拟账号

不是必须的优化选项,pass

为grub菜单加密码

目的:防止别人修改grub进行内核启动项设置以及用当用户模式修改root密码,安装系统后的设置如下:

1、生成md5秘钥
/sbin/grub-md5-crypt 2、修改/etc/grub.conf
在splashimage和title之间加入
password --md5 秘钥

设置完成后管理grub就会提示输入密码

禁止linux系统被ping

为了增加系统的安全性。可以禁止我们的linux系统被ping,可惜修改iptables来设置

一般不用

echo 'net.ipv4.icmp_echo_ignore_all=1'  >> /etc/sysctl.conf

sysctl -p 重载信息并更新启动

如果要恢复:

> /etc/sysctl.conf

echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all

升级openssl,openssh,bash

1、查看
rpm -qa openssl openssh bash 2、安装最新版本
yun -y install openssl openssh bash

Linux之【安装系统后的调优和安全设置】的更多相关文章

  1. Linux安装完后的调优(linux 6)

    1:关闭 SELinux 方法一:  #sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config #替换文本参数       ...

  2. Linux[Manjaro] 小新15笔记本AMD ryzen锐龙4800U,在安装系统后出现的随即死机冻屏问题

    Linux[Manjaro] 小新15AMD ryzen锐龙4800U,在安装系统后出现的随即死机冻屏问题解决办法 年初尝试将manjaro安装在我的笔记本上就存在这个问题,也一度将我劝退.系统安装在 ...

  3. linux vmware安装完成后如何设置桥接上网

    linux 主机初步安装完成后还是不能上网,如何设置共享上网 1  首先要明白上网方式:虚拟机网卡-------------------vmnet1--------------------真实机网卡( ...

  4. Spark性能调优之合理设置并行度

    Spark性能调优之合理设置并行度 1.Spark的并行度指的是什么?     spark作业中,各个stage的task的数量,也就代表了spark作业在各个阶段stage的并行度!     当分配 ...

  5. Linux系统调优及安全设置

    1.关闭SELinux #临时关闭 setenforce 0 #永久关闭 vim /etc/selinux/config SELINUX=disabled 2.设定运行级别为3 #设定运行级别 vim ...

  6. 内网服务器离线编译安装mysql5.7并调优

    目录 内网服务器离线编译安装mysql5.7并调优 前言 关于MySQL 一.MySQL安装篇 部署环境 前期准备工具 挂载系统ISO镜像,配置yum源 二.MySQL调优篇 1.对MySQL进行安全 ...

  7. linux内存基础知识和相关调优方案

    内存是计算机中重要的部件之中的一个.它是与CPU进行沟通的桥梁. 计算机中全部程序的执行都是在内存中进行的.因此内存的性能对计算机的影响很大.内存作用是用于临时存放CPU中的运算数据,以及与硬盘等外部 ...

  8. Linux中安装Oracle11g后出现监听的问题及解决办法

    软件安装: 参考文章: linux安装Oracle11G 错误如下: [oracle@iz2f570bi1k56uz admin]$ lsnrctl start LSNRCTL for Linux: ...

  9. Linux TCP并发请求溺出 调优

    TCP并发请求溺出 调优:系统开启某个监听端口后,当多个TCP请求连接监听端后,会把多个请求交给backlog的默认监听队列由socket server一并处理,backlog有自己的队列长度默认12 ...

随机推荐

  1. python100实例

    实例001:数字组合 题目 有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析 遍历全部可能,把有重复的剃掉. total=0 for i in range(1 ...

  2. 傲视Kubernetes(一):Kubernetes简介

    前言 从上个月,因工作需要外加兴趣所知,博主开始学习Kubernetes,时至今日可以说是刚刚入门.独自学不如一起学,后面博主会一边学着一边将学习内容以博文的形式呈现出来,希望能跟各位园友有问题一起讨 ...

  3. 不断要求用户输入学生姓名,输入q结束.

    while (true) { Console.WriteLine("请输入学生姓名"); string a = Console.ReadLine(); if (a == " ...

  4. 力扣 122 买卖股票的最佳时机II

    力扣 122 买卖股票的最佳时机II 思路: 动态规划,表面上是\(O(2^n)\)的搜索空间,实际上该天的选择只与前一天的状态(是否持有股票)有关.从收益的角度来看,确实每一天的不同选择都会产生不同 ...

  5. Java安全之JNDI注入

    Java安全之JNDI注入 文章首发:Java安全之JNDI注入 0x00 前言 续上篇文内容,接着来学习JNDI注入相关知识.JNDI注入是Fastjson反序列化漏洞中的攻击手法之一. 0x01 ...

  6. 英特尔与 Facebook 合作采用第三代英特尔® 至强® 可扩展处理器和支持 BFloat16 加速的英特尔® 深度学习加速技术,提高 PyTorch 性能

    英特尔与 Facebook 曾联手合作,在多卡训练工作负载中验证了 BFloat16 (BF16) 的优势:在不修改训练超参数的情况下,BFloat16 与单精度 32 位浮点数 (FP32) 得到了 ...

  7. mysql上月最后一天,当月最后一天

    select last_day(DATE_SUB(now(),INTERVAL 1 MONTH)) #上月最后一天日期 %Y-%m-%d select last_day(curdate()) #当月最 ...

  8. 睿象云:为什么 Zabbix 告警如此火热?

    每当我们谈及监控工具的时候,Zabbix 总是最惹人瞩目的那一个.如同清晨荷叶上的剔透露珠,卓尔不凡:如同巷子末头的百年酒香,让人倾心.我们都知道 Zabbix 是监控工具里当仁不让的龙头大哥,却没几 ...

  9. Java 合并多个文件内容到一个文件(递归遍历某个文件夹下所有文件)

    这段代码通过Java I/O流API实现将多个文件合并到一个文件中,输出为文本文件,提供一个支持语法高亮的网站,http://www.codeinword.com/ 适合粘贴代码到word文档,小巧实 ...

  10. 一个提高GPU模糊算法的速度的方法

    一个提高GPU模糊算法的速度的方法 我们知道,模糊算法,比如高斯模糊是卷积算法的一种应用.计算图像中一个像素的模糊颜色值需要通过采样周围像素的颜色值来计算. 对于GPU应用,比如OpenGL,在sha ...