随着Linux系统在服务器中的普遍应用,系统的安全问题也受到人们关注,特别是系统管理员;若是不作好系统的安全防御,就会存在被非法用户***的可能,下面分享在实际运维过程当中的几点增强系统安全的方法。mysql
文章目录linux
1、帐号和口令web
2、远程登录sql
3、开启防火墙shell
4、使用sudo提高执行权限安全
为系统管理员创建普通权限的帐号,为监控机创建监控帐号,分别用于平常系统维护和系统监控;服务器
禁止没必要要登录的帐号使用shell权限;运维
例如专为应用程序建立的用户不须要登录,可以使用以下命令建立ssh
1tcp |
useradd mysql –M –s /sbin/nologin |
强制使用高强度密码,包含字母(大写字母和小写字母),数字和特殊符号;
这个是老生常谈的问题,不少时候都是因为管理员设置简单密码致使被破解;该怎样设置一个不容易被破解又好记忆的密码呢?请参考绿盟科技博客中另外一篇文章设置口令的一些小技巧
设置密码修改频率,通常三个月修改一次;
禁止使用root帐号直接登录,只容许使用普通帐号登录;
更改默认端口;
禁止直接使用口令的方式验证,采用密钥登录;
以上方法能够经过修改sshd的配置文件(/etc/ssh/sshd_config)完成操做
Iptables防火墙是linux系统中强大的工具,能够添加和去除规则来过滤访问,这里简单介绍几个经常使用的命令
1 |
iptables -A INPUT -p tcp --dport 80 -j ACCEPT |
增长一条规则到INPUT规则链中,容许全部目的端口为80的数据包流入;
1 |
iptables -D INPUT -p tcp --dport 80 -j ACCEPT |
删除一条规则
1 |
service iptables save |
保存规则
上面提到给系统管理员创建普通用户的权限,那么须要使用root权限时怎么办呢?sudo命令解决了这个问题;sudo命令可以让普通用户以root的身份执行命令,只须要预先在/etc/sudoers配置文件中配置受权,而该用户不需知道root用户的密码,可是须要先输入本身的密码。
系统为此功能提供visudo命令进行编辑,使用该命令能够进行有限的语法检查,visudo不会保存带有语法错误的配置文件,它会提示你出现的问题。
编辑时遵循下面的格式便可:
1 |
foobar ALL=(ALL) ALL |
以上是增强Linux系统安全防御的基本操做,能够减小被***的概率。