旗鱼云梯Linux端口扫描防护
端口扫描是指某些别有用心的人发送一组端口扫描消息,试图以此侵入某台计算机,并了解其提供的计算机网络服务类型(这些网络服务均与端口号相关)。端口扫描是计算机攻击的第一步,攻击者可以通过它了解到从哪里可探寻到攻击弱点。实质上,端口扫描包括向每个端口发送消息,一次只发送一个消息。接收到的回应类型表示是否在使用该端口并且可由此探寻弱点。
在Linux上每个通过网络访问的程序都要监听一个端口,并通过此端口去访问。比如常用的端口: 22,80,443,3306,6379分别对应的是ssh服务,http服务,https服务,mysql服务,redis服务的默认端口。比如我们访问旗鱼云梯的网站 其实访问的是 或者 443. 比如MySQL开放远程权限允许远程访问的话,那么我们将通过ip:3306去访问mysql服务,redis同样如此 通过ip:6379访问redis服务。如果密码设置简单的话几下就被爆破了,mysql密码设置为123456,一下就爆破了。。。
对于常用服务除了80,443以外非常建议修改默认端口号,
说这么多,那跟端口扫描有什么关系呢?
当我们把SSH默认端口22修改为其他端口比如23456端口, 那么黑客想要继续对我服务器进行SSH爆破那怎么办呢?
演示的我就直接指定端口扫描了,不然扫描全端口扫描太慢了。黑客一般用的都是端口扫描工具进行全端口扫描。
旗鱼云梯根据客户反馈和需求,推出端口防扫描安全防护,自动检测非法端口扫描IP,超过阈值自动封禁,从源头加固主机安全。保护服务器不受端口扫描的危害,坚守第一道防线。
MySQL3306端口漏洞怎么补上?
Mysql会自动开启3306端口用于远程连接mysql服务. 3306端口就是MySQL的默认端口, 但是黑客可以通过它来攻击你的主机系统. 服务器默认MySQL端口是3306, 最近经常被扫描, 甚至扫描到网站很慢或者打不开. 如果不需要远程数据库连接就可以让Mysql关闭3306端口, 既提高了访问速度, 又提高了安全性. 避免远程连接mysql数据库. 本地程序可以通过mysql.sock来连接, 不影响使用.
SSH到主机上输入下面的命令:
vi /etc/my.cnf
在[mysqld]下添加:
skip-networking
最后重启Mysql
service mysqld restart
检查Mysql是否正常运行
service mysqld status
希望对你有帮助!
望采纳!
关于MySQL的几点安全配置
1、安装完MySQL后
修改root用户密码
5.5以前,rpm包安装完MySQL后,root用户密码为空
5.6中,rpm包安装完MySQL后,会随机生成一个root密码,保存在/root/.mysql_secret
5.7以后,使用mysqld --initialize初始化时,默认会自动生成随机密码,并且不创建除root@localhost 外的其他账号,也不创建test库;
2、正确授权
mysql库中有4张权限表,user、db、tables_priv、columns_priv,分别对应用户密码、用户对数据库的权限、对表的权限、对列的权限。
当一个用户向MySQL发起请求时,首先会从user表中验证host、user、password,然后再依次验证db、tables_priv、columns_priv,验证过程中,如果db表中对应权限为Y,则此用户对某个库的权限全为Y,将不再验证tables_priv和columns_priv。
对于MySQL中的账户权限相关的安全配置,总结如下:
针对每个网站建立一个单独的账户
为每个网站单独建立一个专属数据库
按照user-db-tables_priv-columns_pri的顺序进行细粒度的权限控制
为每个用户单独配置一个专属数据库,保证当前用户的所有操作只能发生在它自己的数据库中,防止SQL注入发生后,黑客通过注入点访问到系统表
如果有必要,改变MySQL的root用户的用户名(在user表中更改)
3、MySQL网络完全配置
禁止root用户远程登录
防火墙设置
更改默认端口(默认3306),可以从一定程度上防止端口扫描工具的扫描
限制单个用户的连接数量:
[mysqld]
max_user_connections 20
4、文件权限及文件安全
使用非root用户启动MySQL服务
限制启动MySQL的用户的文件权限,同时确保该用户对MySQL的数据文件等有读写权限
可以使用chroot更改根目录,防止非root用户访问到一些敏感文件,比如:/etc/passwd
不要给非root用户授予process和super权限,mysqladmin processlist和show processlist命令会查看到任何用户执行的命令,这可能看到其他用户执行的update user set password=...;命令,super权限可以终止会话、更改系统参数等
不要对表使用软连接(--skip-symbolic-links参数用来禁用这一功能),表的软连接只有MyISAM支持,因为开启表软连接后(尤其是对于使用系统root用户启动MySQL服务的),MySQL用户就可以使用mysqld来删除、重命名数据文件所在位置以外的文件了
如果plugin文件夹可以被MySQL server写,那么用户就可以使用select ... into dumpfile命令把可执行代码写入到里面,可以通过把plugin_dir参数对应的路径设为只读以及调整--secure-file-priv参数来提高安全性
不要给非root用户授予文件读写权限,防止使用load data local infile来提取本地文件(比如提取/etc/passwd里的信息,会对系统安全造成威胁)
[mysqld]
local-infile=0
5、如果有必要,可以删除~/.bash_history文件,防止读取历史命令
# rm .bash_history .mysql_history
# ln -s /dev/null .bash_history
# ln -s /dev/null .mysql_history
0条大神的评论