如何在Linux中执行远程命令?

在Linux中,可以通过以下两种方式执行远程命令:

1. SSH执行命令:

  • 通过SSH连接远程服务器,使用命令执行远程操作。
  • 连接命令:ssh username@host command
  • 支持使用管道.重定向等,与本地命令执行相同。
  • 需要在服务器启用SSH服务。
    例如:
ssh root@192.168.1.100 'ls /home'  # 远程执行ls /home命令
ssh root@192.168.1.100 'cat /etc/hosts > /tmp/hosts'  # 远程重定向文件

2. Telnet执行命令:

  • 通过Telnet连接远程服务器,登录后手动输入命令执行远程操作。
  • 连接命令:telnet host
  • 需要在服务器启用Telnet服务,存在安全隐患,现已基本被SSH取代。
    例如:
telnet 192.168.1.100
# 登录后输入:
ls /home  

两种方式对比:

  • SSH可以直接在连接命令中执行远程操作,更简单方便,安全可靠。
  • Telnet需要手动登录后输入命令,明文传输,存在信息泄露风险。
  • SSH默认端口22,Telnet默认端口23。
  • SSH需要在服务端单独安装SSH服务,Telnet需要安装Telnet服务。