保护SSH的利器

简介:

由于服务器开放着SSH协议,经常在互联网上会有一些莫名的“骇客”在扫描我服务器的22端口并试图登录,这给服务器安全带来了很多的隐患。如何保障SSH的安全,自然成为了我们管理员工作的重中之重。 ­

BSD的Ports系统收录了N多的 SSH保护软件,其中有denyhosts,sshit,sshguard,file2ban(ports中无此项)等,起初,我用denyhosts来 阻挡SSH的恶意登录,发现它是调用TCP wrapper来实现的,感觉上并不是太好。后来,无意间发现了SSHguard,它可以结合BSD系统内置的防火墙(IPFW、PF、IPFILTER)来过滤SSH登录,非常不错。实现过程如下: ­

1)安装SSHguard ­

 
  1. # cd /usr/ports/security/sshguard-pf 
  2. # make install distclean 

2)删除syslogd里的注释,启动SSHguard ­

 
  1. auth.info;authpriv.info     |exec /usr/local/sbin/sshguard 

3)重新加载syslogd ­

 
  1. # /etc/rc.d/syslogd reload 

如看到以下信息,证明成功启动 ­

 
  1. Nov 20 08:00:01 test sshguard[54247]: Started successfully [(a,p,s)=(4, 420, 1200)], now ready to scan. 

4)在PF里加入以下规则,即可

 
  1. # Define Tables for SSH 
  2. table <sshguard> persist 
  3. block in quick on $ext_if proto tcp from <sshguard> to any port 22 label "ssh bruteforce" 

看日志,已经有人试图登录,被SSHguard阻止了,帅吧

 
  1. Nov 20 03:56:44 test sshd[52381]: Invalid user globus from 88.191.121.114 
  2. Nov 20 03:56:47 test sshd[52383]: Invalid user condor from 88.191.121.114 

最后,屏蔽所有人对我服务器外网口的icmp探测 (Default PF rules is block all) ­

 
  1. pass out inet proto icmp all icmp-type $icmp_types keep state label "allow ping" 

注意哦,是pass out,而非pass in,这样,内网用户依然可以检测与外网的通讯,而外网用户无法探测我服务器外网口是否存活。

查看SSH阻击列表

 
  1. #pfctl -tsshguard -Tshow
    59.63.157.63
    109.123.126.166
    116.125.127.120
    123.212.43.243
    125.250.249.34
    174.123.157.66
    182.18.29.190
    195.49.134.149
    202.170.126.6
    218.240.1.117
    218.241.155.13
    221.132.34.138

哇,这么多IP被block了



本文转自dongfang_09859 51CTO博客,原文链接:http://blog.51cto.com/hellosa/540041,如需转载请自行联系原作者

相关文章
|
8月前
|
算法 安全 网络协议
ssh工作流程及其原理——ssh免密登录
ssh工作流程及其原理——ssh免密登录
192 0
|
17天前
|
网络协议 安全 网络安全
【技术分享】Telnet / SSH
4月更文挑战第7天
22 0
|
4月前
|
网络安全 Python
动手写个ssh连接工具
动手写个ssh连接工具
57 0
|
9月前
|
Java 应用服务中间件 网络安全
【ssh系列一】——框架搭建
建立项目(SpringMVC+Spring+hibernate的maven项目)
|
网络安全 Python
Python编程:fabric实现SSH远程管理服务器
Python编程:fabric实现SSH远程管理服务器
114 0
|
Linux 网络安全 Android开发
SSH神器: Termius介绍与使用
Termius是一款跨平台的SSH工具,提供美观的界面和便捷的操作,支持Android、Windows、macOS及Linux。它允许用户在不同设备间同步服务器连接,适合多设备切换工作。通过注册并关联GitHub学生账号,可以免费获取Termius使用权。软件功能包括SFTP文件传输,还有团队分享功能(需付费)。更多特色等待探索。官网:&lt;https://www.termius.com/&gt;
20628 0
SSH神器: Termius介绍与使用
|
安全 前端开发 网络协议
前端工程师必会之ssh命令
前端工程师必会之ssh命令
|
程序员 网络安全 开发工具
程序员必备小知识:免密码进行SSH连接
程序员必备小知识:免密码进行SSH连接
186 0
程序员必备小知识:免密码进行SSH连接
|
开发框架 Java 数据库连接
SSH 新版整合的那些坑|学习笔记
快速学习 SSH 新版整合的那些坑
|
Shell 网络安全 数据安全/隐私保护
结对编程利器:SSH和Tmux
大部分的结对编程和远程办公的人对SSH和Tmux的组合并不陌生,网上也有很多好的文章,这里我来为大家介绍一个简单的解决方案。
247 0
结对编程利器:SSH和Tmux