# 安裝完Linux系統后調優及安全設置
[TOC]
## 關閉SELinux功能
關閉方式如下:
* 修改配置文件,使關閉SELinux永久生效
~~~
vi /etc/selinux/config
將SELINUX=enforcing修改為SELINUX=disabled
# 或者
[root@localhost ~]# sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
# 檢查修改是否成功
[root@localhost ~]# grep 'SELINUX=disabled' /etc/selinux/config
SELINUX=disabled
~~~
>[danger] 注意:關閉后需要**重啟服務器**,上述方法可以使配置永久生效
* 通過命令行進行臨時修改
~~~
# 查看SELINUX狀態
[root@localhost ~]# getenforce
Enforcing
[root@localhost ~]# setenforce
usage: setenforce [ Enforcing | Permissive | 1 | 0 ]
# 臨時修改SELINUX狀態 1啟用 0警告、不啟用
[root@localhost ~]# setenforce 0
[root@localhost ~]# getenforce
Permissive
~~~
## 系統運行級別
`runlevel` 查看當前系統運行級別
`init number` 切換運行級別
## 精簡開機系統啟動
企業新裝Linux系統之后有必要保留的開機自啟動程序有以下5個:
* **crond** 該服務用于周期性地執行系統及用戶配置的任務計劃。又要周期性執行的任務需要開啟,此服務幾乎是生產場景必須要用的一個軟件。
* **network** 系統啟動時,若想激活或關閉各個網絡接口,則應(必須)考慮開啟。
* **rsyslog** 是操作系統提供的一種機制,系統的首付僅從通常會使用rsyslog將各種信息寫入系統日志文件中,Centos6之前的Linux版本此服務的名字為syslog。
* **sshd** 遠程連接Linux服務器時需要用到這個服務程序,所以必須要開啟,否則將無法連接到Linux服務器。
* **sysstat** 它是一個軟件包,包含檢測系統性能及效率的一組工具,這些工具對于檢測系統性能數據很有幫助。
### 配置方式
#### 執行`ntsysv命令`然后在彈出的窗口中進行設置
#### 執行`setup命令`=>選擇`system service`,然后在彈出的窗口中進行設置
#### 通過一行命令或者shell腳本設置
##### 使用`chkconfig --list`查看系統現有啟動服務
##### 使用`chkconfig servsername on/off` 開啟/關閉所有runlevel級別下自啟動或者`chkconfig servername 運行級別 on/off` 開啟/關閉某一個運行級別下的自啟動狀態
##### 如下for循環實現
~~~
for server in `chkconfig --list|grep 3:on |awk '{print $1}'|grep -Ev 'sshd|rsyslog|network|crond|sysstat'`;
do
chkconfig $server off
done
~~~
## 關閉防火墻
### 查看防火墻規則
`iptables -L -n`
### 關閉防火墻
~~~
[root@localhost ~]# /etc/init.d/iptables stop
iptables:清除防火墻規則: [確定]
iptables:將鏈設置為政策 ACCEPT:filter [確定]
iptables:正在卸載模塊: [確定]
~~~
### 查看防火墻狀態
~~~
[root@localhost ~]# /etc/init.d/iptables status
iptables:未運行防火墻。
~~~
### 關閉防火墻開機自啟動
`chkconfig iptables off`
## 最小化原則
>[warning]
> 1. 安裝Linux系統最小化,即選包最小化,yum安裝軟件包也要最小化,無用的包不裝。
> 2. 開機自啟動服務最小化,即無用的服務不開啟。
> 3. 操作命令最小化。例如:刪除文件用`rm -f filename` 而不用`rm -rf filename`
> 4. 普通用戶授權權限最小化,即只給必須的管理系統的命令。
> 5. inux系統文件及目錄的權限設置最小化,禁止隨意創建、更改、刪除文件
- Linux的安裝
- Linux的軟件安裝管理
- Linux零碎的命令
- 了解ssh
- 系統調優及安全設置
- Linux系統中的硬鏈接和軟連接
- Linux文件和目錄的屬性及權限
- 命令總結
- 文件目錄管理命令
- cat
- cd
- cp
- ls
- mkdir
- mv
- rm
- touch
- vi
- 硬件檢測內核shell命令
- echo
- alias
- dd
- diff
- date
- grep(重要)
- head
- rpm
- sed(重要)
- tree
- unalias
- yum
- seq
- su
- less
- more
- tail
- awk(重要)
- pwd
- history
- whoami
- find(重要)
- which
- vimdiff
- sudo
- wget
- ln
- chmod
- chown
- vim常用技巧
- scp
- 工作場景應用總結
- 自動刪除n天前日志
- 刪除一個目錄下的所有文件但保留一個文件
- Linux軟件安裝
- php安裝(apache版本)
- vsftpd安裝
- git安裝
- python安裝
- LNMP安裝
- LAMP安裝I
- LAMP安裝II
- svn安裝
- svn在Linux下的命令操作
- svn鉤子簡介
- svn代碼上傳流程
- Crond介紹
- sersync應用指南
- 其他
- 小結一
- 系統調優重新整理tmp
- linux禁止root用戶直接登錄sshd并修改默認端口