CentOS最小化安装后的调优及安全设置
时间:2015-05-11 03:33 来源:linux.it.net.cn 作者:IT
清理开机自动启动的服务
显示出所有服务的所有运行级别的启动状态
chkconfig –list
停止所有在运行级别3上开机启动的服务
for i in `chkconfig –list |grep 3:on |awk ‘{print $1}’`;do chkconfig –level 3 $i off;done
再开启常用的服务,crond,network,rsyslog,sshd
for i in crond network rsyslog sshd;do chkconfig –level 3 $i on;done
显示出所有3运行级别下的所有服务(根据需求决定哪个服务启动)
chkconfig –list |grep 3:on
ssh安全配置
备份配置文件(更改配置文件前需要进行备份)
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
修改sshd配置文件(提高系统安全性)
1
2
3
4
5
#vi /etc/ssh/sshd_config
Port 52101 修改ssh的默认端口,默认为22端口
PermitRootLogin no 不允许ROOT用户登录
PermitEmptyPasswords no 不允许空密码登录
UseDns no 不适用DNS
#man sshd_config 详细信息请再男人一下
切换用户
标示符
$ 提示符为$表示普通用户
# 提示符为#表示为管理员root用户
用户之间的切换
$su – root 普通用户切换管理员需要输入密码
#su – xu 管理员切换到普通用户不需要输入密码
给普通用户授予root管理权限
visudo #使用visudo命令来编辑/etc/sudoers
#user MACHINE=COMMANDS
root ALL=(ALL) ALL
cszhi ALL=(ALL) ALL
使用cszhi用户登录
$sudo cat /etc/shadow #普通用户可以查看到shadow文件
Password: #这里输入的密码不是管理员密码,而是cszhi用户自己的密码
用户环境变量
管理员:
#echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
普通用户:
$echo $PATH
/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/cszhi/bin
普通用户和管理员的路径是不一样的,普通用户使用的命令是变量中PATH的路径
比如:$ useradd abc
-bash: useradd: command not found
普通用户在输入命令时,系统会找寻PATH变量中的路径,如果没有找到提示command not found
LINUX字符集
在使用英文安装操作系统后,如果系统中有中文,这时候会显示乱码,需要修改字符集
1
2
3
4
5
#vim /etc/sysconfig/i18n
LANG=”en_US.UTF-8″
SYSFONT=”latarcyrheb-sun16″
en_US.UTF-8 英文字符集
zh_CN.GB18030 中文字符集
让修改内容立刻有效
source /etc/sysconfig/i18n
使用ntp服务更新服务器时间
ntp 网络时间协议
安装ntp
yum install ntp
更新时间
ntpdate time.windows.com
每5分钟执行一次更新
echo '*/5 * * * * ntpdate time.windows.com > /dev/null 2>&1' >>/var/spool/cron/root
查看计划任务
crontab –l
加大服务器文件描述符
当系统服务开启后,访问量变大,会使用到更多的文件描述符
显示当前的文件描述符数
uimits –n
1024
加大文件描述符数
1
2
#vim /etc/security/limits.conf
* - nofile 65536 #在文本的最后一行添加
重新登录用户,在次查看文件描述符
#ulimit –n
65536
调整内核参数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#vim /etc/sysctl.conf
net.ipv4.tcp_fin_timeout = 2
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_keepalive_time = 600
net.ipv4.ip_local_port_range = 4000 65000
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_max_tw_buckets = 36000
net.ipv4.route.gc_timeout = 100
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_synack_retries = 1
net.ipv4.ip_conntrack_max = 25000000
net.ipv4.netfilter.ip_conntrack_max=25000000
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=180
net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait=120
net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait=60
net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait=120
使修改立即生效
sysctl –p
http://www.frozentux.net/ipsysctl-tutorial/ipsysctl-tutorial.html
(责任编辑:IT)
清理开机自动启动的服务 chkconfig –list
停止所有在运行级别3上开机启动的服务 for i in `chkconfig –list |grep 3:on |awk ‘{print $1}’`;do chkconfig –level 3 $i off;done 再开启常用的服务,crond,network,rsyslog,sshd for i in crond network rsyslog sshd;do chkconfig –level 3 $i on;done 显示出所有3运行级别下的所有服务(根据需求决定哪个服务启动) chkconfig –list |grep 3:on ssh安全配置 备份配置文件(更改配置文件前需要进行备份) cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak 修改sshd配置文件(提高系统安全性)
#man sshd_config 详细信息请再男人一下
切换用户
用户之间的切换 给普通用户授予root管理权限 visudo #使用visudo命令来编辑/etc/sudoers #user MACHINE=COMMANDS root ALL=(ALL) ALL cszhi ALL=(ALL) ALL 使用cszhi用户登录 $sudo cat /etc/shadow #普通用户可以查看到shadow文件 Password: #这里输入的密码不是管理员密码,而是cszhi用户自己的密码
用户环境变量 #echo $PATH /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin 普通用户: $echo $PATH /usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/cszhi/bin
普通用户和管理员的路径是不一样的,普通用户使用的命令是变量中PATH的路径
LINUX字符集
让修改内容立刻有效 source /etc/sysconfig/i18n
使用ntp服务更新服务器时间 yum install ntp 更新时间 ntpdate time.windows.com 每5分钟执行一次更新 echo '*/5 * * * * ntpdate time.windows.com > /dev/null 2>&1' >>/var/spool/cron/root 查看计划任务 crontab –l
加大服务器文件描述符 uimits –n 1024 加大文件描述符数
重新登录用户,在次查看文件描述符 #ulimit –n 65536 调整内核参数
使修改立即生效 sysctl –p http://www.frozentux.net/ipsysctl-tutorial/ipsysctl-tutorial.html (责任编辑:IT) |