标签归档:iptables

Linux服务器安全建议以及相关配置

能处处都特别理想,我按照我思考的最理想的配置来描述,可能有不对的地方,请多多包涵和指出!

1,永远不要关闭iptables

我以前为了方便开发调试,经常执行iptables -F清空所有规则,但是后面深入了解网络安全,发现这样会导致服务器处于无保护状态。至少要确保每个端口开放都是明确的,否则会很不安全

2,SSH只允许密钥登陆,禁止密码登陆和Root远程登陆权限,修改22端口

如果密码不复杂,那么允许密码登陆也会导致服务器不安全。我推荐使用密钥进行登陆,过几天有空写一些专门的SSH密钥配置流程。

接下来编辑/etc/ssh/sshd_config,修改一些参数:

修改22端口,和禁止Root登陆
禁止密码登陆

3,不能随意给Root权限,在chmod设置权限的时候谨慎给与其他用户组rwx

root账号应该是顶级用户使用的,具体分配给成员各自的账号,在/var/log/下各种操作都可以一目了然。如果都是root权限,那么在出问题的时候很难查出是谁操作的(随意删除操作日志、.bash_history等)。还有,Linux的权限系统限定了owner,group,other users,不能随意的设置文件777权限,这可能会导致部分用户可以读取执行隐私文件…

CentOS7 防火墙iptables的使用与管理

防火墙概述

在网络安全许多规则中,我认为有一条很重要,那就是给服务器加上防火墙。如果这台服务器是接入公网环境下(有公网IP),那就更不能忽视防火墙。如果简单的把防火墙停掉,那么所有的端口都可能被黑客进行攻击

防火墙可以只开放指定的端口以及规则,如果用好防火墙,那么所有的网络流量都将在自己的掌控之下。我总结一下这几天项目部署,防火墙的使用经验总结

防火墙安装

因为以前经常使用CentOS6、Ubuntu,接触最多最熟悉的也是iptables,所以我选择将原有的firewall替换成iptables,如果你是CentOS7,使用下面命令可以进行替换:

systemctl disable firewalld
sudo yum install -y iptables-services

防火墙启动与停止

开机自启: systemctl enable iptables 
禁止开机自启: systemctl disable iptables
配置保存: service iptables save
重启防火墙: service iptables reload

规则概述

有许多的规则类型,比如说INPUT管理入站(外部流量进来),OUTPUT出站(本机流量流出),FORWARD(处理通过系统路由的数据包)等,这些在我理解应该都是一个个CHAIN(链),然后每个链都有各自的规则,从高到低按顺序依次判断,如下图:

图上有许多Chain,各自的Chain都有规则,这些规则从上到下依次判断,满足即返回

常见的命令参数有-p 协议类型(tcp,udp),–sport(源端口),–dport(目标端口),-s(源IP),-d(目标IP),-j 处理结果(accept允许通过,drop拒绝但不回应,reject拒绝并立刻回应)

常用的命令

允许指定端口通过:
iptables -I