vps安全设置
来源:互联网 发布:淘宝供货商是什么意思 编辑:程序博客网 时间:2024/05/22 13:33
适合新手及才接触VPS的朋友们看一下,主要是关于VPS安全方面相关内容的
禁止ROOT登陆 保证安全性;
使用DDoS deflate简单防攻击;
iftop Linux流量监控工具;
每日自动备份VPS到FTP空间;
升级LNMP的NGINX到最新版。
一、修改SSH端口
vi /etc/ssh/sshd_config找到其中的#Port 22(第13行),去掉#,修改成Port 3333
使用如下命令,重启SSH服务,注:以后用新端口登陆。
service sshd restart二、禁止ROOT登陆
先添加一个新帐号vpsmm,可以自定义:
useradd vpsmm给vpsmm帐号设置密码:
passwd vpsmm仍旧是修改/etc/ssh/sshd_config文件,第39行:#PermitRootLogin yes,去掉前面的#,并把yes改成no,然后,重启SSH服务。以后,先使用vpsmm登陆,再su root即可得到ROOT管理权限。
login as: vpsmmvpsmm@ip password:*****
Last login: Tue Nov 22 14:39:58 2010 from 1.2.3.4
su root
Password:*********** #注这里输入ROOT的密码
三、使用DDos deflate简单防落CC和DDOS攻击
使用netstat命令,查看VPS当前链接确认是否受到攻击:
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nIP前面的数字,即为连接数,如果说正常网站,几十到一百都属于正常连接,但出现几百,或上千的就可以垦定这个IP与你的VPS之间可能存在可疑连接现象。
可以使用iptables直接BAN了这个IP的永久访问:
iptables -A INPUT -s 12.34.56.78 -j DROP今天介绍给大家一种方法,是使用软件DDos deflate来自动检测并直接BAN掉的方法,首先我们要确认一下iptables服务状态,默认CENTOS就安装的,不看也行。
service iptables status安装DDos deflat:
wget http://www.inetbase.com/scripts/ddos/install.shchmod +x install.sh
./install.sh
安装后需要修改/usr/local/ddos/ddos.conf,主要是APF_BAN=1要设置成0,因为要使用iptables来封某些可疑连接,注意EMAIL_TO=“root”,这样BAN哪个IP会有邮件提示:
##### Paths of the script and other filesPROGDIR="/usr/local/ddos"
PROG="/usr/local/ddos/ddos.sh"
IGNORE_IP_LIST="/usr/local/ddos/ignore.ip.list" //IP地址白名单
CRON="/etc/cron.d/ddos.cron" //定时执行程序
APF="/etc/apf/apf"
IPT="/sbin/iptables"
##### frequency in minutes for running the script
##### Caution: Every time this setting is changed, run the script with --cron
##### option so that the new frequency takes effect
FREQ=1 //检查时间间隔,默认1分钟
##### How many connections define a bad IP? Indicate that below.
NO_OF_CONNECTIONS=150 //最大连接数,超过这个数IP就会被屏蔽,一般默认即可
##### APF_BAN=1 (Make sure your APF version is atleast 0.96)
##### APF_BAN=0 (Uses iptables for banning ips instead of APF)
APF_BAN=1 //使用APF还是iptables。推荐使用iptables,将APF_BAN的值改为0即可。
##### KILL=0 (Bad IPs are'nt banned, good for interactive execution of script)
##### KILL=1 (Recommended setting)
KILL=1 //是否屏蔽IP,默认即可
##### An email is sent to the following address when an IP is banned.
##### Blank would suppress sending of mails
EMAIL_TO="root" //当IP被屏蔽时给指定邮箱发送邮件,推荐使用,换成自己的邮箱即可
##### Number of seconds the banned ip should remain in blacklist.
BAN_PERIOD=600 //禁用IP时间,默认600秒,可根据情况调整
四、使用iftop查看详细网络状况
安装IFTOP软件:
yum -y install flex byacc libpcap ncurses ncurses-devel libpcap-develwget http://www.ex-parrot.com/pdw/iftop/download/iftop-0.17.tar.gz
tar zxvf iftop-0.17.tar.gz
cd iftop-0.17
./configure
make && make install
安装后,使用iftop运行,查看网络情况。TX,发送流量;RX,接收流量;TOTAL,总流量;Cumm,运行iftop期间流量;peak,流量峰值;rates,分别代表2秒、10秒、40秒的平均流量。
快捷键:h帮助,n切换显示IP主机名,s是否显示本机信息,d是否显示远端信息,N切换端口服务名称,b切换是否时数流量图形条。
五、每日备份你的VPS上传到FTP空间
六、升级LNMP中的NGINX到最新版
现在最新版是0.8.53,如果以后出新版,只要更新版本号就可以,在SSH里运行:
wget http://www.nginx.org/download/nginx-0.8.53.tar.gztar zxvf nginx-0.8.53.tar.gz
cd nginx-0.8.53
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module
make
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old
cd objs/
cp nginx /usr/local/nginx/sbin/
/usr/local/nginx/sbin/nginx -t
kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`
kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`
/usr/local/nginx/sbin/nginx -v
cd ..
cd ..
rm -rf nginx-0.8.53
rm -rf nginx-0.8.53.tar.gz
七、常用netstat命令:
1.查看所有80端口的连接数
netstat -nat|grep -i "80"|wc -l2.对连接的IP按连接数量进行排序
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n3.查看TCP连接状态
netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rnnetstat -n | awk '/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}'
netstat -n | awk '/^tcp/ {++state[$NF]}; END {for(key in state) print key,"\t",state[key]}'
netstat -n | awk '/^tcp/ {++arr[$NF]};END {for(k in arr) print k,"\t",arr[k]}'
netstat -n |awk '/^tcp/ {print $NF}'|sort|uniq -c|sort -rn
netstat -ant | awk '{print $NF}' | grep -v '[a-z]' | sort | uniq -c
4.查看80端口连接数最多的20个IP
netstat -anlp|grep 80|grep tcp|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -n20netstat -ant |awk '/:80/{split($5,ip,":");++A[ip[1]]}END{for(i in A) print A,i}' |sort -rn|head -n20
5.用tcpdump嗅探80端口的访问看看谁最高
tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F"." '{print $1"."$2"."$3"."$4}' | sort | uniq -c | sort -nr |head -206.查找较多time_wait连接
netstat -n|grep TIME_WAIT|awk '{print $5}'|sort|uniq -c|sort -rn|head -n207.找查较多的SYN连接
netstat -an | grep SYN | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -nr | more- Vps安全设置
- vps安全设置
- vps密匙设置,和安全
- 个人vps之linux安全设置
- windows xp服务器(vps)上IIS安全设置
- 基于CentOS系统的VPS安全设置与优化
- CentOS系统的VPS安全设置与优化
- 基于CentOS 6.4系统的VPS安全设置与优化
- Linode VPS 安装 Ubuntu Linux和基本安全设置
- 配置vps主机安全
- Xshell设置密钥登录确保Linux VPS及服务器更加安全
- Linux VPS iptables 设置
- vps设置VPN
- VPS iptables防火墙设置
- [备忘] VPS 安全和其他
- java版VPS服务器设置
- linode VPS购买、设置教程
- VPS三道安全之门
- Minimum Window Substring 最小子串窗口@LeetCode
- POJ-1042-贪心+枚举+优先队列
- vs2012解决stlport安装编译冲突的问题
- 汉:英文或拼音转为汉字 20140716 ①文本处理
- 奇思妙想
- vps安全设置
- Android apk动态加载机制
- 关于struts+spring4+hibernate4整合是出现的No Session found for current thread解决
- php 基础算法(用*表示金字塔)通过hash 比较两个数组相同的数
- JMS: activeMQ+tomcat
- OpenWRT移植到三星S5PV210处理器上
- QtCreator 按钮部件
- LeetCode Linked List Cycle II
- 2014.7.15