ubuntu

Ubuntu SSH命令行操作有哪些

小樊
46
2025-03-26 10:16:50
栏目: 智能运维

Ubuntu SSH命令行操作主要包括以下几个方面:

基本连接与断开

  1. 连接到远程服务器

    ssh username@hostname
    
    • username 是你在远程服务器上的用户名。
    • hostname 是远程服务器的IP地址或域名。
  2. 使用密钥认证连接

    ssh -i /path/to/private_key username@hostname
    
    • -i 参数指定私钥文件路径。
  3. 断开连接

    • 输入 exit 或按 Ctrl+D

文件传输

  1. 使用SCP(Secure Copy Protocol)复制文件

    scp localfile username@hostname:/path/to/destination
    scp username@hostname:/path/to/source localfile
    
  2. 使用SFTP(SSH File Transfer Protocol)进行交互式文件传输

    sftp username@hostname
    
    • 进入SFTP会话后,可以使用 getputlscd 等命令。

执行远程命令

  1. 直接在远程服务器上执行命令

    ssh username@hostname 'command'
    
  2. 在后台运行命令

    ssh username@hostname 'command &' 
    

端口转发

  1. 本地端口转发

    ssh -L local_port:destination_host:destination_port username@hostname
    
  2. 远程端口转发

    ssh -R remote_port:destination_host:destination_port username@hostname
    
  3. 动态端口转发(SOCKS代理)

    ssh -D local_port username@hostname
    

配置SSH

  1. 编辑SSH配置文件

    nano ~/.ssh/config
    
    • 可以在这里设置默认用户名、端口、密钥等。
  2. 生成SSH密钥对

    ssh-keygen -t rsa -b 4096
    
    • 生成的公钥可以添加到远程服务器的 ~/.ssh/authorized_keys 文件中。
  3. 修改SSH服务配置

    • 编辑 /etc/ssh/sshd_config 文件,然后重启SSH服务:
      sudo systemctl restart sshd
      

安全性增强

  1. 更改SSH默认端口

    • sshd_config 中修改 Port 参数。
  2. 禁用root登录

    • sshd_config 中设置 PermitRootLogin no
  3. 使用防火墙限制访问

    • 使用 ufw 或其他防火墙工具配置规则。

监控与日志

  1. 查看SSH连接日志

    sudo tail -f /var/log/auth.log
    
  2. 使用 netstatss 查看SSH端口监听状态

    sudo netstat -tulnp | grep sshd
    # 或者
    sudo ss -tulnp | grep sshd
    

其他有用的命令

注意事项

通过掌握这些基本的SSH命令行操作,你可以高效地在Ubuntu系统上进行远程管理和文件传输。

0
看了该问题的人还看了