温馨提示×

Ubuntu SSH远程命令执行技巧

小樊
76
2025-04-29 14:03:55
栏目: 智能运维

使用SSH(Secure Shell)在Ubuntu上进行远程命令执行是一个常见且强大的操作。以下是一些有用的技巧和步骤,帮助你更高效和安全地使用SSH。

基本SSH连接

  • 连接命令
    ssh 用户名@远程IP地址
    
    例如:
    ssh root@192.168.1.100
    

使用SSH配置文件简化连接

  • 配置文件~/.ssh/config 你可以在该文件中配置多个主机,使得每次连接时只需指定别名即可。例如:
    Host myserver
        HostName 192.168.1.100
        User user
        Port 2222
        IdentityFile ~/.ssh/id_rsa
    
    使用时只需:
    ssh myserver
    

使用密钥认证提高安全性

  • 生成密钥对

    ssh-keygen -t rsa
    

    这将生成id_rsa(私钥)和id_rsa.pub(公钥)文件。

  • 部署公钥: 使用ssh-copy-id将公钥复制到远程服务器:

    ssh-copy-id user@remote_host
    

    或者手动复制:

    cat ~/.ssh/id_rsa.pub | ssh user@remote_host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
    

高级SSH使用技巧

  • 端口转发: 本地端口转发(访问内网服务):

    ssh -L 8080:internal_host:80 user@jump_host
    

    动态SOCKS代理:

    ssh -D 1080 user@remote_host
    
  • 使用SSH执行远程命令: 你可以在远程命令后直接添加要执行的命令,例如:

    ssh user@remote_host 'ls; cd /home; pwd'
    
  • 使用nohup在后台运行命令

    ssh user@remote_host 'nohup long_running_command &'
    

    这样即使SSH连接断开,命令也会继续执行。

安全性建议

  • 禁用密码认证: 在/etc/ssh/sshd_config中设置:

    PermitRootLogin no
    PasswordAuthentication no
    

    然后重启SSH服务:

    sudo systemctl restart sshd
    
  • 使用防火墙限制SSH端口访问

    sudo ufw allow ssh
    
  • 定期更新系统和SSH软件包: 保持系统和软件的最新状态是基本的安全实践。

通过这些技巧和建议,你可以更安全、高效地使用SSH在Ubuntu上进行远程命令执行和管理。希望这些信息对你有所帮助!

0