新闻资讯

远程访问服务器 ssh 命令怎么用的

2025-03-16

SSH(Secure Shell)命令用于在不安全网络中安全地远程连接服务器、执行命令和传输文件等操作。要使用 SSH 命令,需先确保本地和远程服务器都支持 SSH 协议,然后通过特定格式的命令实现不同功能。
1.基本连接:在本地终端(如 Linux 或 macOS 的终端,Windows 可借助如 PuTTY 等工具)中,使用ssh username@server_address命令。其中username是远程服务器上的用户名,server_address是服务器的 IP 地址或域名。例如ssh john@192.168.1.100,回车后若首次连接,系统会提示是否继续连接,输入yes,然后输入该用户在远程服务器上的密码,即可建立连接。此时可在远程服务器上执行命令,如同在本地操作一样。
2.指定端口连接:默认 SSH 使用 22 端口,但有时服务器会更改 SSH 端口。此时用ssh -p port_number username@server_address,比如服务器 SSH 端口改为 2222,连接命令则为ssh -p 2222 john@192.168.1.100。
3.执行单个命令:若只想在远程服务器执行单个命令而不进入交互式会话,可使用ssh username@server_address "command"。例如想查看远程服务器上/var/log/syslog文件的最后 10 行,命令为ssh john@192.168.1.100 "tail -n 10 /var/log/syslog" 。
4.远程文件传输:利用scp(基于 SSH 协议的安全复制命令)。从本地复制文件到远程服务器,格式为scp local_file_path username@server_address:remote_file_path 。如将本地/home/user/Documents/report.txt文件复制到远程服务器/var/www/html/目录下,命令是scp /home/user/Documents/report.txt john@192.168.1.100:/var/www/html/。从远程服务器下载文件到本地则是scp username@server_address:remote_file_path local_file_path。
5.密钥认证:为避免每次输入密码,可使用密钥认证。在本地生成密钥对,通常在 Linux 或 macOS 中用ssh-keygen -t rsa命令,按提示操作(可直接回车使用默认设置),会在~/.ssh/目录生成id_rsa(私钥)和id_rsa.pub(公钥)。将公钥内容添加到远程服务器~/.ssh/authorized_keys文件中,可通过ssh-copy-id username@server_address命令自动完成此操作,之后即可无密码登录。


拓展阅读
-SSH 协议版本:SSH 有版本 1 和版本 2,版本 2 更安全,解决了版本 1 的诸多安全漏洞。大多数现代系统默认使用 SSH2,若服务器或客户端有特殊需求,可配置使用特定版本。
-SSH 配置文件:本地~/.ssh/config文件可配置常用连接参数,如主机别名、端口、用户名等。例如设置别名my_server对应特定服务器,可在文件中添加Host my_server HostName 192.168.1.100 User john Port 2222,之后用ssh my_server即可连接。
-SSH 隧道:SSH 隧道可通过加密通道转发网络流量,实现如远程访问本地无法直接访问的服务等功能。例如通过 SSH 隧道访问远程服务器上的 MySQL 数据库,可在本地执行ssh -L 3307:127.0.0.1:3306 username@server_address,将本地 3307 端口映射到远程服务器的 MySQL 服务端口 3306 。

新闻资讯
热门专题
最新专题
友情链接