小豆浆 centos7下修改openssh的版本信息(banner) www.xdoujiang.com

  • A+
所属分类:linux实战
  1. 一、基础环境
  2. 1、[root@localhost ~]# cat /etc/redhat-release
  3. CentOS Linux release 7.2.1511 (Core)
  4. 2、IP
  5. [root@localhost ~]# /sbin/ifconfig
  6. eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
  7.         inet 192.168.134.145  netmask 255.255.255.0  broadcast 192.168.134.255
  8. 二、看下当前版本的ssh版本信息
  9. 1、[root@localhost ~]# ssh -V
  10. OpenSSH_6.6.1p1, OpenSSL 1.0.1e-fips 11 Feb 2013
  11. 2、看下相关命令在哪里 一会要修改这个命令
  12. [root@localhost ~]# whereis sshd
  13. sshd: /usr/sbin/sshd /usr/share/man/man8/sshd.8.gz
  14. 3、看下这个文件类型
  15. [root@localhost ~]# file /usr/sbin/sshd
  16. /usr/sbin/sshd: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=285b5fb66381cc462dccca6c1b9a344949340678, stripped
  17. 是1个二进制文件 使用vim打开是乱码的
  18. 4、先看下strings命令
  19. strings命令在对象文件或二进制文件中查找可打印的字符串。
  20. 字符串是4个或更多可打印字符的任意序列,以换行符或空字符结束。
  21. strings命令对识别随机对象文件很有用。
  22. 5、因为要修改下 所以先看下
  23. 小豆浆 centos7下修改openssh的版本信息(banner) www.xdoujiang.com
  24. 6、修改前要先备份下sshd和ssh2个文件
  25. [root@localhost ~]# cp /usr/sbin/sshd /usr/sbin/sshd.bak
  26. [root@localhost ~]# cp /usr/bin/ssh /usr/bin/ssh.bak
  27. 7、使用sed命令修改
  28. sed -i 's/OpenSSH_6.6/OpenSSH75.6/g' /usr/sbin/sshd
  29. sed -i 's/OpenSSH_6.6/OpenSSH75.6/g' /usr/bin/ssh
  30. 8、再使用telnet或nc检查看看或脚本查看
  31. 1)使用nc
  32. [root@localhost ~]# nc -v 192.168.134.145 22
  33. 效果:
  34. Ncat: Version 6.40 ( http://nmap.org/ncat )
  35. Ncat: Connected to 192.168.134.145:22.
  36. SSH-2.0-OpenSSH75.6.1
  37. 2)使用telnet
  38. [root@localhost ~]# telnet 192.168.134.145 22
  39. 效果:
  40. Trying 192.168.134.145...
  41. Connected to 192.168.134.145.
  42. Escape character is '^]'.
  43. SSH-2.0-OpenSSH75.6.1
  44. 3)使用python
  45. #!/usr/bin/python
  46. # -*- coding: utf-8 -*-
  47. #--------------------------------------------------
  48. #Author:gongzheng
  49. #Email:85646830@163.com
  50. #FileName:2.py
  51. #Function: 
  52. #Version:1.0 
  53. #Created:2017-09-11
  54. #--------------------------------------------------
  55. import socket
  56. def retBanner(ip,port):
  57.     try:
  58.         socket.setdefaulttimeout(2)
  59.         s = socket.socket()
  60.         s.connect((ip,port))
  61.         banner = s.recv(1024)
  62.         return banner
  63.     except:
  64.         return
  65. def main():
  66.     ips = ['192.168.134.145']
  67.     port = 22
  68.     banner = retBanner(ips[0],port)
  69.     print banner,
  70. if __name__ == '__main__':
  71.     main()
  72. 效果:
  73. [root@localhost scripts]# python 2.py
  74. SSH-2.0-OpenSSH75.6.1
  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: