购买一台阿里云云主机(CentOS)后

系统的优化
优化之前,首先查看版本信息

cat /etc/redhat-release
CentOS release 6.9 (Final)

查看内核版本

uname -a
Linux iZwz98akt9dh26btcaud2zZ 2.6.32-696.10.1.el6.x86_64 #1 SMP Tue Aug 22 18:51:35 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

基础优化与安全重点小结

  • 1 不用root登录管理系统,而以普通用户登录通过sudo授权管理
  • 2 更改默认的远程连接SSH服务端口,禁止root用户远程连接,甚至要更改SSH服务只监听内网IP
  • 3 定时自动更新服务器时间,使其和互联网同步
  • 4 配置yum更新源,从国内更新源下载安装软件包
  • 5 关闭SELinux
  • 6 定时自动清理临时目录日志,防止磁盘inodes数被小文件占满
  • 7 调整文件描述符的数量,进程及文件的打开都会消耗文件描述符的数量
  • 8 精简并保留必要的开机启动服务
  • 9 Linux内核参数优化/etc/sysctl.config,执行sysetl –p生效
  • 10 更改系统字符集, 为“zh_CN.UTF-8”,使其支持中文,防止出现乱码问题。
  • 11 锁定关键文件,如: passwd、/etc/shadow/、/etc/group/、/etc/gshadow、/etc/inittab,处理以上内容后把chattr、lsattr、改名为root,转移走,这样就安全多了。
  • 12 清空/etc/issue /etcissue.net,去除系统及内核版本登录前的屏幕显示
  • 13 禁止主机被ping
  • 14 打补丁并升级有已知漏洞的软件

1.禁用root用户登陆管理系统
添加用户设置密码

useradd user
passwd user
#修改配置文件
vi /etc/ssh/sshd_config
#找到“PermitRootLogin yes”把注释去掉 保存,然后重启sshd服务

利用sudo控制用户的使用权限
为了方便管理,可以给用户授权,过程:
输入vi sudoers找到98行,在下面放入如下内容:

user   ALL=(ALL)   NOPASSWD: ALL     <--all表示完全的系统权限,NOPASSWD表示提示权限命令时不需要密码
#配置完成后要进行检查,命令如下:
grep root /etc/sudoers
oldboy    ALL=(ALL)   NOPASSWD: ALL

此时再以user用户登录系统时,就可以通过执行sudo ls –l /root (sudo后面跟正常命令)的命令以root用户的权限管理系统了,如下:

ls /root/
ls: cannot open directory /root/: Permission denied
sudo ls /root/
HostKeyDB.txt       test.txt      12345                         install.log         woaini

2.修改ssh端口

sed -i ‘s/#Port 22/Port 2121/‘ /etc/ssh/sshd_config
#示例中将22端口改为2121此处记得开放防火墙端口
/sbin/iptables -I INPUT -p tcp --dport 2121 -j ACCEPT
/etc/rc.d/init.d/iptables save
sed -i "/A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT/d" /etc/sysconfig/iptables
service iptables restart

3.设置服务器时间同步

ntpdate time.nist.gov<--时间同步
ntpdate ntp1.aliyun.com<--国内阿里云时间同步服务器

利用定时任务crond把上述命令每5分钟自动执行一次,命令如下:

echo ‘#time sync by root at 2017-11-03‘ >>/var/spool/cron/root
echo ‘0 2 * * * /usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1‘ >>/var/spool/cron/root
crontab –l
#time sync by root at 2017-11-03
0 2 * * * /usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1

4.配置yum更新源并增加epel源

mv /etc/yum.repos.d/CentOS-Base.repo{,.$(date +%F_%T).backup}
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
yum makecache

5.关闭selinux

sed -i ‘s#SELINUX=enforcing#SELINUX=disabled#‘ /etc/selinux/config

6.定时清理日志缓存文件,清理日志脚本delOldLogs.sh:

vim /data/sh/cleanlog/delOldLogs.sh
#!/bin/sh
#删除输入路径下的修改时间在45天以前的日志文件
find $1 -mtime +45 -name "*log*" -exec rm -f {} \;

指定清理哪些路径的日志的脚本

del_all_OldLogs.sh:
vim /data/sh/cleanlog/del_all_OldLogs.sh
#!/bin/bash
/data/sh/cleanlog/delOldLogs.sh “/home/usr/ewp/logs”
/data/sh/cleanlog/delOldLogs.sh “/home/usr/h5/logs”
/data/sh/cleanlog/delOldLogs.sh “/home/usr/Payment/logs”

给脚本添加执行权限:

chmod a+x /data/sh/cleanlog/del*.sh

添加定时任务:

vim /var/spool/cron/root

#添加以下内容:

10 0 * * 6 /data/sh/cleanlog/del_all_OldLogs.sh

注:
1.为了防止出现权限不够的情况,因此这里设置了一个root用户的定时任务
2.这句代码的意思是:在每周6的0:10执行/data/sh/cleanlog/del_all_OldLogs.sh 这个脚本
查看定时任务:

crontab -l

7.加大文件描述

\cp /etc/security/limits.conf{,.$(date +%F_%T).backup}
echo ‘*               -    nofile            65535‘ >> /etc/security/limits.conf
tail -1 /etc/security/limits.conf
# 重启生效
ulimit -n

8.精简并保留必要的软件启动(如cron、network、sshd、rsyslog、sysstat)

chkconfig --list|egrep -v  "crond|ssh|network|rsyslog|sysstat"|awk ‘{print "chkconfig",$1,"off"}‘|bash
chkconfig --list|grep "3:on"

9.内核优化

\cp /etc/sysctl.conf{,.$(date +%F_%T).backup}
cat >>/etc/sysctl.conf<<EOF
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.core.somaxconn = 16384
net.core.netdev_max_backlog = 16384
net.ipv4.tcp_max_orphans =16384
# 以下参数是对iptables防火墙的优化,防火墙不开会提示,可以忽略不理
net.nf_conntrack_max = 25000000
net.netfilter.nf_conntrack_max = 25000000
net.netfilter.nf_conntrack_tcp_timeout_established = 180
net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120
net.netfilter.nf_conntrack_tcp_timeout_close-wait = 60
net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120
EOF
# 让内核配置文件中的参数生效
sysctl -p  

10.更改系统字符集, 为“zh_CN.UTF-8”,使其支持中文,防止出现乱码问题。

vim ~/.bash_profile
#添加
LANG="zh_CN.UTF-8"
export LANG

11.锁定关键文件,如: passwd、/etc/shadow/、/etc/group/、/etc/gshadow、/etc/inittab,处理以上内容后把chattr、lsattr、改名为root,转移走,这样就安全多了。

chattr +a /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittabmv /usr/bin/chattr ~/.pki/rootmv /usr/bin/lsattr ~/.pki/toor

12.清空/etc/issue /etcissue.net,去除系统及内核版本登录前的屏幕显示

echo > /etc/issue
echo > /etc/issue.net

13.禁止Linux系统被ping

# 禁止ping
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
# 允许ping
# echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all

原文地址:https://www.cnblogs.com/linuxde/p/8719662.html

时间: 2024-08-30 16:57:12

购买一台阿里云云主机(CentOS)后的相关文章

花1台的钱入手2台【最能抗DDoS】阿里云主机【攻略】

花1台的钱入手2台[最能抗DDoS]阿里云主机[攻略]: 第一步:先申请0元半年 http://click.aliyun.com/m/335/:注:0元机器只有新帐号可申请第二步:再买6折37/月 http://click.aliyun.com/m/623/ :注:最长可买5个月这样,你花1台的钱就入手啦2台阿里云主机,神马企业门户.博客.论坛哒,非常足够啦 占便宜不想停的,还可以用SLB搞个小小集群第三步:再免费领150元的SLB代金券http://click.aliyun.com/m/596

在阿里云的CentOS环境中安装django

购买了一台阿里云主机.操作系统为CentOS 6.5.准备在上面跑Django做Web开发.因为CentOS自带的python版本号较低,安装Django先要安装新版本号python.还是费了点周折. 1,升级Python 阿里云给配置好的centos 6.5下的默认Python版本号是2.6,跟Django的最新版本号须要的Python环境是不配套的.在django的安装文档里有: Being a Python Web framework, Django requires Python. It

中招阿里云主机升级和续费套路了

卢松松博客有一台阿里云主机,眼看还有一个月到期了.此时阿里云正好在做活动,我想正好借助这个活动续费能优惠一些. 虽然阿里云对续费主机非常不友好,续费贼贵.但好歹还是送了100元的续费优惠劵,虽然优惠券没腾讯云给力,但好歹也是送了,6000多元,能省100是100. 当我领卷之后,阿里云突然弹出提示,告诉我点此免费升级配置,升级后更安全.配置更强大.更符合当前网站运营环境.我也没仔细看,就点升级了. 等我升级后,发现这台机器的续费竟然涨价了20%.... 此时服务器还有1个月到期,之前续费是6K多

【转】阿里云主机购买使用教程

转载地址:http://waihuizhan.com/aliyun/ 现在的云主机很多了,像什么华为云.天翼云.腾讯云等等,然而看看这些云主机的使用人数.论坛人气.性价比.售后服务等,综合这些因素来看,我认为还是阿里云服务器好. 阿里云的创新是有目共睹的,经常会有新的产品出台,优惠活也很频繁.有问题提交工单,工作人员回答很及时,必要时工作人员会致电解答.论坛求帮助,也会有专门的版主回帖. 阿里云目前拥有北京.杭州.青岛.深圳.香港等地区的机房,你可以根据网站访问区域来选择把网站放在哪个机房.机房

在阿里云主机上基于CentOS用vsftpd搭建FTP服务器

最近需要在一台阿里云的云服务器上搭建FTP服务器,在这篇博文中分享一下我们根据实际需求进行的一些配置. ftp软件用的是vsftpd. vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序.特点是小巧轻快,安全易用. vsftpd 的名字代表"very secure FTP daemon",安全是它的开发者 Chris Evans 考虑的首要问题之一.在这个 FTP 服务器设计开发的最开始的时候,高安全性就是一个目标. 准备工作 安装vsftpd yum install v

阿里云主机--重置系统后的登录问题

阿里云主机--重置系统后的登录问题 今天在把阿里云服务器的磁盘格式化之后,然后windows系统上,在gitbash上用ssh登录时,遇见以下问题: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@IT IS

阿里云主机实战应用之centos7上的防火墙设置

最近公司又上了一台服务器,以前都是用centos 6系统,这次选择使用了centos 7系统的安装镜像,因为现在程序版本在centos 7上一般php默认就是5.4以上的,mysql也变成了mariadb,但使用都一样而已,apache安装的httpd程序也是2.4的版本,所以就算yum安装基本服务也是比较新一些的版本吧. 公司拨款后就在阿里云后台买了台主机,直接yum装的lamp,添加虚拟主机的配置文件这里就不说了,网上一堆的配置文档,只记录下,在centos7上遇到的坑. lamp环境都搭好

阿里云主机 CentOS6.5 安装Mysql php Apache

真正的勇士感觉面对操蛋的人生.之前申请了一个香港的虚拟主机,各种问题各种慢,有时候就无缘无故的打不开了,中途还经历了一次他们更换服务器,还好我有网站备份,要不我只能蹲在墙角哭了.最近在做微信的开发,咱们也与时俱进一把,使用一下thinkphp的3.2版本!刚想愉快的搞一把,what?告诉我php版本小于5.3.0?什么鬼?看了看thinkphp的入口文件,大大的写着下面这句! // 检测PHP环境 if(version_compare(PHP_VERSION,'5.3.0','<')) die(

[zz]阿里云计算:CentOS+nginx+Django+Postgresql web环境搭建

原文链接: http://www.cnblogs.com/AllStarGIS/p/3788518.html 参考链接: 1. http://www.cnblogs.com/zhouej/archive/2012/03/25/2379646.html 2. http://ec58.com/archives/2836 最近在在万网和阿里云上分别购买了一个域名和一台云服务器,打算用来做点什么.昨天吃完晚饭稍作休息开始对这个新奇的玩意作了些了解并着手配置其运行环境,今早凌晨4点多才弄得7788,为此也