• 精通Linux,不清楚Telnet和SSH?


    Telnet协议

    1. Telnet是电信(Telecommunications)和网络(Networks)的联合缩写,这是一种在UNIX平台上最为人所熟知的网络协议。
    2. Telnet使用端口22,它是专门为局域网设计的。
    3. Telnet不是一种安全通信协议,因为它并不使用任何安全机制,通过网络/互联网传输明文格式的数据,包括密码,所以谁都能嗅探数据包,获得这个重要信息。
    4. Telnet中没有使用任何验证策略及数据加密方法,因而带来了巨大的安全威胁,这就是为什么telnet不再用于通过公共网络访问网络设备和服务器。

    利用telnet命令探测远程端口

    telnet命令是TELNET协议的用户接口,它支持两种模式:命令模式和会话模式,虽然telnet支持许多命令,但大部分情况下,我们只是使用它查看目标主机是否打开了某端口(默认是22)。

    端口未打开

    1. $ telnet 101.199.97.65 62715
    2. Trying 101.199.97.65...
    3. telnet: connect to address 101.199.97.65: Connection refused

    端口已打开

    1. $ telnet 101.199.97.65 62715
    2. Trying 101.199.97.65...
    3. Connected to 101.199.97.65.
    4. Escape character is '^]'.

    此时命令未退出。根据提示Escape character is ‘]’.可知退出字符为’]’(CTRL+])。此时输入其它字符不能使其退出,CTRL+C都不行。输入CTRL+]后会自动执行,进入命令模式:

    1. ^]
    2. telnet>

    此时再运行quit才会真正退出。

    1. telnet> quit
    2. Connection closed.

    SSH协议

    1. SSH代表安全外壳(Secure Shell),它现在是通过互联网访问网络设备和服务器的唯一的主要协议。
    2. SSH默认情况下通过端口22运行;不过,很容易更改这个端口。
    3. SSH是一种非常安全的协议,因为它共享并发送经过加密的信息,从而为通过互联网等不安全的网络访问的数据提供了机密性和安全性。
    4. 一旦通讯的数据使用SSH经过加密,就极难解压和读取该数据,所以我们的密码在公共网络上传输也变得很安全。
    5. SSH还使用公钥用于对访问服务器的用户验证身份,这是一种很好的做法,为我们提供了极高的安全性。
    6. SSH主要用在所有流行的操作系统上,比如Unix、Solaris、Red-Hat Linux、CentOS和Ubuntu等。

    利用ssh来控制远程服务器

    ssh(选项)(参数)

    选项

    1. -1:强制使用ssh协议版本1;
    2. -2:强制使用ssh协议版本2;
    3. -4:强制使用IPv4地址;
    4. -6:强制使用IPv6地址;
    5. -A:开启认证代理连接转发功能;
    6. -a:关闭认证代理连接转发功能;
    7. -b:使用本机指定地址作为对应连接的源ip地址;
    8. -C:请求压缩所有数据;
    9. -F:指定ssh指令的配置文件;
    10. -f:后台执行ssh指令;
    11. -g:允许远程主机连接主机的转发端口;
    12. -i:指定身份文件;
    13. -l:指定连接远程服务器登录用户名;
    14. -N:不执行远程指令;
    15. -o:指定配置选项;
    16. -p:指定远程服务器上的端口;
    17. -q:静默模式;
    18. -X:开启X11转发功能;
    19. -x:关闭X11转发功能;
    20. -y:开启信任X11转发功能。

    参数

    • 远程主机:指定要连接的远程ssh服务器;
    • 指令:要在远程ssh服务器上执行的指令。

    SSH连接使用

    语法看上去很死板累赘,其实用不到那么多。习惯中就只用这个

    1. ssh name@server-ip
    2. 或者
    3. ssh server-ip -l name

    以上两种方式都可以远程登录到服务器,server-ip代表远程服务器的IP地址,name代表SSH登陆进远程服务器的用户名。如果远程服务器的端口是其他的,在后面加上-p参数。 

    ssh name@server-ip -p 12345

    连接成功终端就会提示继续输入用户密码,输入就好了。至于SSH原理,请参见下文

    SSH 原理-CSDN博客

  • 相关阅读:
    Python:入门与基本语法
    Eureka 注册中心
    C专家编程 第7章 对内存的思考 7.1 Intel 80x86系列
    GNU C中({})表达式的返回值
    使用Docker安装Guacamole远程网关并配置录像回放
    SpringBoot使用随机端口启动
    论信息系统项目的安全管理(学习)
    RNA修饰质谱检测|dextran-siRNA 葡聚糖化学偶联DNA/RNA|siRNA-PLGA聚乳酸-羟基乙酸共聚物修饰核糖核酸
    MySQL索引特性(上)
    解密Socks5代理和代理IP:网络工程师的隐秘武器
  • 原文地址:https://blog.csdn.net/qq_28165595/article/details/127759399