WenRou's Blog

新浪微薄腾讯微薄

最新碎语:测试图片碎语哦

您的位置:WenRou's Blog >lnamp> centos系统安全方面设置

centos系统安全方面设置

前几天VPS曾重装了一次,因为在照着网上的教程进行一些安全方面的设置时,把root的远程登录ssh的权限给关了,没有再建立一个普通用户(教程里没提到这个)就reboot了,之后果断悲剧了,无法远程登陆SSH了。这不,把我吓得不敢再弄了,于是咨询了几位正在用VPS的朋友,最终确定了如下的安全设置方案:

1.修改SSH端口号,这个很有必要,把默认端口号22改成其他的之后,一些专门扫描22端口的黑客软件可以拒之门外了。

操作方法:vi /etc/ssh/sshd_config
找到#port 22
将前面的#去掉,然后修改端口 port 123 (123可以根据个人情况自定义)

2、禁用root登录

注意,采用此方法前必须要先建立好一个普通用户:
操作方法:useradd abc
passwd abc

然后在/etc/ssh/sshd_config这个文件里设置是否禁用root登录,这个看个人需要了,我暂时没弄。

操作方法:找到其中的PermitRootLogin yes 将其修改为 PermitRootLogin no(如果PermitRootLogin前面有#的话也要删除掉)

以后用普通用户登陆后,如果需要root权限就采用  su root 命令即可。

完成以上两步之后重启sshd服务:service sshd restart

3.简单配置一下防火墙规则

1)安装iptables防火墙:yum install iptables

2)清除已有iptables规则

iptables -F
iptables -X
iptables -Z

3)设置防火墙规则

#允许本地回环接口(即运行本机访问本机):iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT

# 允许已建立的或相关连的通行:iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#允许所有本机向外的访问 :iptables -A OUTPUT -j ACCEPT

# 允许访问22端口(ssh远程连接端口,如果已修改为其他端口,此处要注意填写新的端口),80端口(开网页用的),20,21端口(ftp用的)

iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 20 -j ACCEPT

#如果需要远程连接数据库,还需要开启3306端口,设置方法同上。

#禁止其他未允许的规则访问

iptables -A INPUT -j REJECT  (注意:如果22端口或者更已经更改的ssh端口未加入允许规则,SSH链接会直接断开。)
iptables -A FORWARD -j REJECT

完成这步之后,发现无法ping了,还需要添加如下命令:

执行:iptables -L -n --line-numbers

将INPUT里面的reject-with icmp-port-unreachable那一条删除
如果要删除的INPUT里面的reject-with icmp-port-unreachable这条规则的序号为8,则执行:iptables -D INPUT 8

4)查看已添加的iptables规则

iptables -L -n

5)iptables的开机启动及规则保存

chkconfig --level 345 iptables on

将其加入开机启动:service iptables save保存规则。

到此,关于VPS安全方面的折腾算是告一段落了。


---

转载请注明本文标题和链接:《centos系统安全方面设置

分享到:

发表评论

39 + 1 =
路人甲 表情
看不清楚?点图切换 Ctrl+Enter快速提交