当前位置: 首页 > news >正文

生产环境提升ssh安全的10种方式

原因:

有一个朋友是做游戏的,他告诉我他们公司关于ssh安全方面就有五层验证!好吧,可能对于一些不是很注重安全的运维小伙伴来说,弄那么复杂干嘛?甚至有的公司直接root登陆,甚至有的ssh默认端口都不改。我个人认为不一定安全做的那么多,(当然要根据公司业务具体环境具体来定)但起码一些基本的安全方面要做到位!

下面是我个人的一些总结,分享给大家!


常见的安全方面的措施:

1、硬防火墙。

通过硬件防火墙acl策略也决定是否可以访问某台主机

2、软防火墙

比如iptables,tcpwrappers,防护软件等,内部对主机进一步进行限制

3、修改默认的ssh端口

默认是22,建议改成五位。

4、密码要符合复杂性要求,防止暴力破解

避免ssh暴力破解,建议密码稍微复杂一些,符合四分之三原则!

5、禁止root登陆

禁止root远程ssh登录

在/etc/ssh/sshd_config设置:PermitRootLogin no:

禁止root本机登录(根据具体环境,这个不是很必要)

将 auth required pam_succeed_if.so user != root quiet

添加到/etc/pam.d/login 文件第一行

6、禁止密码登陆

删除不必要的账号,并禁止用户密码登陆

7、公钥私钥认证

通过公钥私钥rsa2048,并设置复杂性密码

8、LDAP等方式统一认证登陆

通过对ssh账号集中化管理,进一步提升安全

9、对secure日志进行日志切割,通过脚本,对于不安全的访问ip进行过滤并报警

secure日志记录着用户远程登陆的信息,可通过查看此日志排查不安全因素。

10、搭建日志服务器,对secure日志进行监控。排查不安全因素

一个好的日志服务器,可大大减轻管理员的工作,并方便管理。

.....


总结:

上面只是个人在生产环境碰到的一些问题和个人总结,当然还有很多种方式可以提高其安全性,根据自己的架构环境,选择适合自己的安全措施才是王道!


有什么问题,可联系作者!

相关文章:

  • 重提敏捷已死
  • AppFabric 版本区分
  • android之SQLlite操作
  • 文件查找和压缩
  • HDU4813 Hard Code
  • 8、LVM逻辑卷和RAID管理
  • Max server memory是否需要配置?
  • 数据库建表的时候报 “1215 Cannot add foreign key constraint”
  • 转:HTTP 301 跳转和302跳转的区别
  • HTML5 离线缓存详解(转)
  • apache配置rewrite及.htaccess文件
  • SqlServer数据库全角转换成半角
  • 转-临界区对象TCriticalSection与TRTLCriticalSection的区别
  • 20160623
  • vSphere部署系列之05——虚拟机的创建和设置
  • [译]Python中的类属性与实例属性的区别
  • “Material Design”设计规范在 ComponentOne For WinForm 的全新尝试!
  • “寒冬”下的金三银四跳槽季来了,帮你客观分析一下局面
  • gitlab-ci配置详解(一)
  • hadoop入门学习教程--DKHadoop完整安装步骤
  • Javascript 原型链
  • Shell编程
  • Swift 中的尾递归和蹦床
  • 阿里云Kubernetes容器服务上体验Knative
  • 从重复到重用
  • 如何在 Tornado 中实现 Middleware
  • “十年磨一剑”--有赞的HBase平台实践和应用之路 ...
  • # 手柄编程_北通阿修罗3动手评:一款兼具功能、操控性的电竞手柄
  • #我与Java虚拟机的故事#连载14:挑战高薪面试必看
  • (C#)Windows Shell 外壳编程系列9 - QueryInfo 扩展提示
  • (WSI分类)WSI分类文献小综述 2024
  • (笔记)Kotlin——Android封装ViewBinding之二 优化
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (九)c52学习之旅-定时器
  • (十一)图像的罗伯特梯度锐化
  • (转)Groupon前传:从10个月的失败作品修改,1个月找到成功
  • (转载)在C#用WM_COPYDATA消息来实现两个进程之间传递数据
  • (轉貼) 資訊相關科系畢業的學生,未來會是什麼樣子?(Misc)
  • ***监测系统的构建(chkrootkit )
  • .bat批处理(十):从路径字符串中截取盘符、文件名、后缀名等信息
  • .gitignore文件设置了忽略但不生效
  • .h头文件 .lib动态链接库文件 .dll 动态链接库
  • .net 4.0发布后不能正常显示图片问题
  • .NET 应用架构指导 V2 学习笔记(一) 软件架构的关键原则
  • .NET成年了,然后呢?
  • .NET的数据绑定
  • .Net小白的大学四年,内含面经
  • /usr/lib/mysql/plugin权限_给数据库增加密码策略遇到的权限问题
  • @column注解_MyBatis注解开发 -MyBatis(15)
  • @RequestBody详解:用于获取请求体中的Json格式参数
  • [ 常用工具篇 ] AntSword 蚁剑安装及使用详解
  • [Android Pro] AndroidX重构和映射
  • [C/C++]_[初级]_[关于编译时出现有符号-无符号不匹配的警告-sizeof使用注意事项]
  • [C/C++]数据结构 深入挖掘环形链表问题
  • [C++][数据结构][算法]单链式结构的深拷贝