位置: 编程技术 - 正文

linux下高级SSH安全技巧(linux ssh安装包)

编辑:rootadmin

推荐整理分享linux下高级SSH安全技巧(linux ssh安装包),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux中安装ssh,linux ssh,linux ssh,linux安装sshd服务,linux安装ssh2,linux ssh gui,linux ssh gui,linux安装sshpass,内容如对您有帮助,希望把文章链接给更多的朋友!

linux下高级SSH安全技巧(linux ssh安装包)

SSH服务器配置文件是/etc/ssh/sshd_conf。在你对它进行每一次改动后都需要重新启动SSH服务,以便让改动生效。 1、修改SSH监听端口 默认情况下,SSH监听连接端口,攻击者使用端口扫描软件就可以看到主机是否运行有SSH服务,将SSH端口修改为大于的端口是一个明智的选择,因为大多数端口扫描软件(包括nmap)默认情况都不扫描高位端口。 打开/etc/ssh/sshd_config文件并查找下面这样的行: Port 修改端口号并重新启动SSH服务: /etc/init.d/ssh restart 2、仅允许SSH协议版本2 有两个SSH协议版本,仅使用SSH协议版本2会更安全,SSH协议版本1有安全问题,包括中间人攻击(man-in-the-middle)和注入(insertion)攻击。编辑/etc/ssh/sshd_config文件并查找下面这样的行: Protocol 2,1 修改为 Protocol 2 3、仅允许特定的用户通过SSH登陆 你不一个允许root用户通过SSH登陆,因为这是一个巨大的不必要的安全风险,如果一个攻击者获得root权限登陆到你的系统,相对他获得一个普通用户权限能造成更大的破坏,配置SSH服务器不允许root用户通过SSH登陆,查找下面这样的行: PermitRootLogin yes 将yes修改为no,然后重新启动服务。现在,如果你想使用特权用户,你可以先以其他用户登陆,然后再转换到root。 创建一个没有实际权限的虚拟用户是一个明智的选择,用这个用户登陆SSH,即使这个用户遭到破解也不会引起什么破坏,当创建这个用户时,确保它属于wheel组,因为那样你才能切换到特权用户。 如果你想让一列用户都能通过SSH登陆,你可以在sshd_config文件中指定它们,例如:我想让用户anze、dasa、kimy能通过SSH登陆,在sshd_config文件的末尾我添加下面这样一行: AllowUsers anze dasa kimy 4、创建一个自定义SSH banner 如果你想让任何连接到你SSH服务的用户看到一条特殊的消息,你可以创建一个自定义SSH banner,只需要创建一个文本文件(我的是/etc/ssh-banner.txt),然后输入你想的任何文本消息,如: *This is a private SSH service. You are not supposed to be here.* *Please leave immediately. * 编辑好后,保存这个文件,在sshd_config中查找下面这样一行: #Banner /etc/issue.net 取消掉注释【将#去掉】,然后将路径修改为你自定义的SSH banner文本文件。 5、使用DSA公钥认证 代替使用用户名和密码对SSH进行认证,你可以使用DSA公钥进行认证,注意你既可以使用登陆名,也可以使用DSA公钥进行认证,使用DSA公钥认证可以预防你的系统遭受字典攻击,因为你不需要用登陆名和密码登陆SSH服务,而是需要一对DSA密钥,一个公钥和一个私钥,在你本地机器上保存私钥,将公钥放在服务器上。当你发起一个SSH登陆会话时,服务器检查密钥,如果它们匹配的话,你就可以直接进入shell,如果它们不匹配,你的连接将被自动断开。 在本例中的私人计算机叫‘工作站1’,服务器叫‘服务器1’。在两个机器上我有相同的home目录,如果服务器和客户端上的home目录不同将不能工作,实现,你需要在你的私人计算机上创建一对密钥,命令:~$ ssh-keygen -t dsa,它将要求你为私钥输入一个密语,但是你可以保留为空,因为这不是一个推荐的做法。密钥对创建好了:你的私钥在~/.ssh/id_dsa,你的公钥在.ssh/id_dsa.pub。 接下来,拷贝~/.ssh/id_dsa.pub中的内容到‘服务器1’的~/.ssh/authorized_keys文件中,~/.ssh/id_dsa.pub的内容看起来象下面这样: ~$ cat .ssh/id_dsa.pub ssh-dss AAAAB3NzaC1kc3MAAACBAM7K7vkK5CRsvOhiHDUROvYbNgr7YEqtrdfFCUVwMWc JYDusNGAIC0oZkBWLnmDu+y6ZOjNPOTtPnpEX0kRoHmaX8NZbBD4aUVlbG7zZTdr LZVSFhCI/Fm4yROHGe0FO7FV4lGCUIlqa+QP9Vvco7qyBdIpDuNV0LAAAAFQC/9ILjqII7n M7aKxIBPDrQwKNyPQAAAIEAq+OJC8+OYIOeXcW8qcB6LDIBXJV0UT0rrUtFVo1BNcAWz5pu Fe7eplmr6t7Ljl7JdkfEA5De0k3WDs 9/rD1tJ6UfqSRc2qPzbn0p0jLPIjdMMSISQqaKO4m2fO2VJcgCWvsghIoD0AMRC7ngIe6bta NIhBbqriRGL5gh4AAACAJj1/rV7iktOYuVyqV3BAz3JHoaf+H/dUDtX+wuTuJpl+tfDfrb WOqrARuHFRF0Tu/Rx4oOZzadLQovafqrDnU/No0Zge+WVXdd4ol1YmUlRkqp8vcws5mLVP fST1amc0YNeBpEQi0xPEFUD0IXzZtXtHVLziA1/NuzY= anze@station1.example.com 如果文件~/.ssh/authorized_keys已经存在,请将上面的内容附加在该文件的后面。剩下的只是给该文件设置正确的权限了: ~$ chmod ~/.ssh/authorized_keys 现在,配置sshd_config文件使用DSA密钥认证,确保你将下面三行前的注释去掉了: RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile %h/.ssh/authorized_keys 重新启动服务,如果你的配置没有错误,现在你就可以SSH到你的服务器,而且无需任何交互动作(如输入用户名和密码)就直接进入你的home目录了。 如果你只想使用DSA认证登陆,确保你在sshd_config中取消掉注释并修改PasswordAuthentication这一行,将yes改为no: PasswordAuthentication no 任何在服务器上没有公钥的人试图连接到你的SSH服务,它就被拒绝,给它显示如下一个拒绝提示信息: Permission denied (publickey). 6、使用TCP wrappers仅允许指定的主机连接 如果你想在你的网络上只允许特定的主机才能连接到你的SSH服务,但又不想使用或弄乱你的iptables配置,那这个方法非常有用,你可以使用TCP wrappers。在这个例子中对sshd进行TCP包裹,我将创建一条规则允许本地子网..1.0/和远程...的自己连接到我的SSH服务。 默认情况下,TCP wrappers首先在/etc/hosts.deny中查找看主机是否允许访问该服务,接下来,TCP wrappers查找/etc/hosts.allow看是否有规则允许该主机服务指定的服务,我将在/etc/hosts.deny中创建一个规则,如下: sshd: ALL 这意味着默认情况下所有主机被拒绝访问SSH服务,这是应该的,否则所有主机都能访问SSH服务,因为TCP wrappers首先在hosts.deny中查找,如果这里没有关于阻止SSH服务的规则,任何主机都可以连接。 接下来,在/etc/hosts.allow中创建一个规则允许指定的主机使用SSH服务: sshd: ..1 ... 现在,只有来自..1.0/和...的主机能够访问SSH服务了,其他主机在连接时还没有到登陆提示符时就被断开了,并收到错误提示,如下: ssh_exchange_identification: Connection closed by remote host 7、使用iptables允许特定的主机连接 作为TCP wrappers的一个代替品,你可以使用iptables来限制SSH访问(但可以同时使用这个两个的),这里有一个简单的例子,指出了如何允许一个特定的主机连接到你的SSH服务: ~# iptables -A INPUT -p tcp -m state --state NEW --source ... --dport -j ACCEPT 并确保没有其他的主机可以访问SSH服务: ~# iptables -A INPUT -p tcp --dport -j DROP 保存你的新规则,你的任务就完成了,规则是立即生效的 8、SSH时间锁定技巧 你可以使用不同的iptables参数来限制到SSH服务的连接,让其在一个特定的时间范围内可以连接,其他时间不能连接。你可以在下面的任何例子中使用/second、/minute、/hour或/day开关。 第一个例子,如果一个用户输入了错误的密码,锁定一分钟内不允许在访问SSH服务,这样每个用户在一分钟内只能尝试一次登陆: ~# iptables -A INPUT -p tcp -m state --syn --state NEW --dport -m limit --limit 1/minute --limit-burst 1 -j ACCEPT ~# iptables -A INPUT -p tcp -m state --syn --state NEW --dport -j DROP 第二个例子,设置iptables只允许主机...连接到SSH服务,在尝试三次失败登陆后,iptables允许该主机每分钟尝试一次登陆: ~# iptables -A INPUT -p tcp -s ... -m state --syn --state NEW --dport -m limit --limit 1/minute --limit-burst 1 -j ACCEPT ~# iptables -A INPUT -p tcp -s ... -m state --syn --state NEW --dport -j DROP 9、结论 这些技巧都不是很难掌握,但是它们对于保护你的SSH服务却是很强劲的手段,花一点代价换来的是睡一个好觉。

Linux的文件系统目录结构简要介绍 对于Linux来讲它的树型结构与Windows不同,Windows可以有多个分区,每个分区都有根,但Linux只有一个根,其他的所有文件、目录或硬盘分区、软盘、光盘

nagios监控服务器 安装配置方法 NAGIOS服务端安装一、主软件包:1.nagios-3.0.x.tar.gz主程序2.nagios-plugins-1.4.x.tar.gz插件3.nrpe_2.8.x.tar.gz外部构件4.pnp-0.4.X图形化工具二、基本安装:软件包准备

linux下Samba服务和NFS服务配置的方法 linux下Samba服务和NFS服务配置一、Samba服务配置过程samba的功能很简单,就是为了使linux和windows之间能够实现共享。并且利用samba搭建文件服务器,不仅比w

标签: linux ssh安装包

本文链接地址:https://www.jiuchutong.com/biancheng/363204.html 转载请保留说明!

上一篇:Linux配置防火墙 开启80端口、3306端口的方法(linux的防火墙配置文件)

下一篇:Linux的文件系统目录结构简要介绍(Linux的文件系统采用树形结构())

  • 预收账款开票怎么做账
  • 转出未交增值税是借方还是贷方
  • 境外收入个人所得税抵免限额
  • 营业执照注销对商标有影响吗
  • 生产车间领用材料,用于产品生产
  • 上市公司收购其他公司要多久
  • 长期借款利息费用计算
  • 一般纳税人留底税额抵减欠缴税额
  • 国际货运代理0税率和免税
  • 收到员工归还借款属于现金流量表
  • 怎么填报清算所得税申报表?
  • 取得特许权使用费收入增值税税率
  • 水电费没有票怎么做账
  • 印花税销售分录
  • 旅游景区税收标准
  • 技术转让怎么算成本
  • 开票代码在哪里看
  • 发票涉税风险有哪些
  • 微软surfacepro3上市时间
  • 上月预提的费用怎么记账
  • php哈希表
  • macbookpro怎么打开活动监视器
  • win10excel闪退是什么原因
  • 公司logo设计费是业务宣传费吗
  • 项目优化管理工具
  • php assign
  • 房产证和不动产权证都要办理吗
  • PHP:is_dir()的用法_Filesystem函数
  • ipad最长使用时间
  • 阿里云搭建hexo
  • 购车发票遗失了能否去4s店里补开
  • php数组按照某个字段排序
  • php+mysql+jquery实现日历签到功能
  • 股东垫付款怎么处理
  • css5个定位
  • ChatGPT 中文调教指南。各种场景使用指南。学习怎么让它听你的话
  • 其他应收款等于
  • 民间非盈利组织会计要素组成
  • 个体工商户超过100万怎么缴税
  • 公司注册实收资本能为0嘛
  • 生产辅助
  • 免税不能抵扣
  • 应收款为负数怎么理解这个概念
  • 通货膨胀率怎么求
  • 企业投资股权收益如何征税
  • 接受捐赠的增值税可以抵扣吗
  • 计提投资性房地产折旧会计科目
  • 应收账款少收会计分录
  • 总公司可以给子公司开票吗
  • 营业外支出可以抵扣进项税吗
  • 以前年度应收账款少记怎么处理
  • 新会计准则待摊费用还有吗
  • 企业建账流程图
  • mysql深度解析
  • MySQL 5.6 中TIMESTAMP with implicit DEFAULT value is deprecated错误
  • 教你怎么使用加油机
  • mysql5.7免安装版配置
  • 域怎么改名
  • fedora修改ip地址
  • ie11 ua
  • linux wk
  • windows7正版验证办法
  • win8系统如何连接wifi
  • centos7tar解压
  • centos6.5怎么进入图形界面
  • win10 rs4
  • win10 20h2 微软账户
  • windows10 正式版
  • javascript教程推荐知乎
  • 在文本输入框中的输入内容是
  • 手机关卡类游戏
  • python函数的方法
  • md5加密python
  • 国税局公告2019年43号
  • 上年汇算清缴调减的职工薪酬今年需要调增吗
  • 四川国税网上营业厅
  • 预缴纳税申报个税怎么算
  • 车辆购置税减免政策上汽大通 大家mifa6
  • 日常生活中有哪些税
  • 企业如何网上申报税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设