Fork me on GitHub

Firewall和ssh安全设置 修改ssh默认端口 设置key密钥登录 添加防火墙规则


使用Linux服务器的时候经常会遇到22端口被爆破的情况,这时候我们就可以通过修改ssh默认端口添加密钥登录并放行新的ssh端口。来让我们的服务器更加安全。


查看爆破次数记录

1
cat /var/log/secure | awk '/Failed/{print $(NF-3)}' | sort | uniq -c | awk '{print $2" = "$1;}'

1. Firewall防火墙设置

1.1 开启端口

1
firewall-cmd --zone=public --add-port=80/tcp --permanent
  • 命令含义:
    –zone #作用域
    –add-port=80/tcp #添加端口,格式为:端口/通讯协议
    –permanent #永久生效,没有此参数重启后失效

1.2 重启防火墙

1
firewall-cmd --reload

1.3 常用命令介绍

1
2
3
4
5
6
7
8
9
10
11
12
13
14
firewall-cmd --state                           ##查看防火墙状态,是否是running
firewall-cmd --reload ##重新载入配置,比如添加规则之后,需要执行此命令
firewall-cmd --get-zones ##列出支持的zone
firewall-cmd --get-services ##列出支持的服务,在列表中的服务是放行的
firewall-cmd --query-service ftp ##查看ftp服务是否支持,返回yes或者no
firewall-cmd --add-service=ftp ##临时开放ftp服务
firewall-cmd --add-service=ftp --permanent ##永久开放ftp服务
firewall-cmd --remove-service=ftp --permanent ##永久移除ftp服务
firewall-cmd --add-port=80/tcp --permanent ##永久添加80端口
iptables -L -n ##查看规则,这个命令是和iptables的相同的
firewall-cmd --list-all ##查看防火墙规则
man firewall-cmd ##查看帮助

更多命令,使用 firewall-cmd --help 查看帮助文件

2. 修改ssh默认端口

2.1 修改SSH服务器配置文件

1
vim /etc/ssh/sshd_config


把注释去掉,然后修改为想要的端口。

2.2 ssh连接指定端口

1
ssh -p 2222 [email protected].xxx.xxx.xxx

如果修改客户端配置文件 /etc/ssh/config_ssh
把Port改成2222,则连接ssh服务器时默认连接的端口为2222

3. 使用key密钥登录禁用ssh密码登录

3.1 启用key密钥登录

请参考本站另一篇文章的第三章节《Nginx搭建hexo博客》

设置好后就可以直接通过key登录啦,密码都不用输,太方便了。

3.2 禁用ssh密码登录

1
vim /etc/ssh/sshd_config

  • 推荐一个超级好用安全可靠还便宜的国外vps

    点击图片注册送50美元体验金!
本文结束啦 感谢您阅读
路漫漫其修远兮 吾将上下而求索