在Linux中打开网络连接并远程连接到服务器,核心方法是使用SSH协议,通过ssh 用户名@服务器IP命令即可实现安全远程登录。
linux怎么连接服务器
要建立到服务器的网络连接,你需要先明确自己的访问权限和网络环境,多数情况下,你手头会有一台已经开通远程登录权限的服务器,以及相应的账号和密码(或密钥文件),Linux系统本身就内置了强大的网络客户端工具,不需要额外安装太多东西。
连接前需要确认的三件事
- 网络通畅:本机能正常访问互联网,或者能ping通目标服务器的内网/公网IP地址。
- 服务器开放了SSH端口:默认端口是22,如果服务器管理员改过端口,你需要知道具体端口号。
- 拥有登录凭证:用户名和密码,或者私钥文件(通常以
.pem或.key。
最简单的SSH连接命令
打开终端,直接输入以下命令:
ssh 用户名@服务器IP地址
执行后,系统会询问你是否确认连接(首次连接时),输入yes回车,然后输入密码即可登录,如果你登录的是云服务器,比如简米云、酷番云,用户名常见为root(CentOS、Ubuntu系统通用)。
示例:
ssh root@192.168.1.100
此时终端会提示输入密码,密码输入时不显示任何字符,这是正常现象,输完直接回车即可。
使用指定端口连接
如果服务器改了SSH端口(比如用22026),需要加-p参数指定:
ssh -p 22026 root@192.168.1.100
对于国内用户连接海外服务器时,如果频繁遇到超时或断连,优先检查本地网络出口和防火墙策略。
linux ssh连接服务器命令的进阶用法
基础的ssh命令能解决大多数日常需求,但掌握几个进阶用法能让你在管理多台服务器时更省心。
使用密钥免密登录
密码登录虽然简单,但每次都要输入,而且密码过于简单容易被人暴力破解,行业共识是,生产环境强烈推荐使用密钥对登录。
第一步,检查本机是否已有密钥,没有就生成:
ls ~/.ssh/id_rsa.pub
如果提示文件不存在,执行:
ssh-keygen -t rsa -b 4096
一路回车即可,会在~/.ssh/目录生成一对公私钥。
第二步,将公钥拷贝到服务器:
ssh-copy-id root@192.168.1.100
输入一次密码后,后续登录就不需要密码了,如果ssh-copy-id命令不可用,也可以手动把~/.ssh/id_rsa.pub追加到服务器的~/.ssh/authorized_keys文件中。
连接后执行单条命令
不需要进入交互式终端,直接查看服务器状态:
ssh root@192.168.1.100 "free -h && df -h && uptime"
这在写脚本批量巡检服务器时特别有用,系统会一次性执行命令并返回结果,然后断开连接。
配置别名简化连接
频繁连接的服务器,每次打一长串命令很累,编辑本机的SSH配置文件:
vim ~/.ssh/config
Host myserver
HostName 192.168.1.100
User root
Port 22
保存后,只需要输入ssh myserver就能连接上,配置项一目了然。
| 参数 | 作用 | 示例值 |
|---|---|---|
| Host | 自定义别名 | web1 |
| HostName | 服务器IP或域名 | 0.113.10 |
| User | 登录用户名 | ubuntu |
| Port | SSH端口,默认22 | 2222 |
| IdentityFile | 私钥文件路径 | ~/.ssh/host_key.pem |
文件传输怎么处理
日常操作服务器免不了传文件,使用scp命令(基于SSH协议)最直接:
# 本地文件上传到服务器 scp /本地路径/文件.zip root@服务器IP:/远端路径/ # 服务器文件下载到本地 scp root@服务器IP:/远端路径/文件.zip /本地路径/
如果端口改动过,用-P(大写P)指定端口:
scp -P 22026 file.zip root@192.168.1.100:/root/
linux连接远程服务器工具哪个好
虽然命令行SSH功能完整,但图形化工具在某些场景下确实更直观,选工具这件事,取决于你客户端是哪个系统,以及你习惯用鼠标还是键盘。
命令行工具:系统自带,稳定高效
Linux终端自带的ssh、scp
、sftp就是最可靠的工具,优点是不需要额外安装,占用资源极小,在无图形界面的服务器环境(比如最小化安装的CentOS)中也能流畅工作,设置好SSH密钥后,体验并不比图形工具差。
适合人群:纯命令行爱好者、需要自动化脚本管理服务器、远程维护无桌面环境的机器。
图形化工具:操作直观,容易上手
如果你在本地用Windows系统,那Xshell是使用率相当高的一款SSH客户端,不过它需要到官网下载安装包,对于Linux桌面用户,可以使用Remmina,支持RDP、VNC、SSH等多种协议,在Ubuntu软件中心输入remmina即可安装。
FinalShell也是很多国内运维喜欢的工具,集成了服务器资源监控、文件管理、网络检测等功能,支持Windows和macOS版本,还有Linux版本,这类图形工具的特点是:
- 左侧直接显示服务器文件列表,拖拽即可上传下载
- 内置终端配色方案,日志高亮可读性强
- 多标签页管理,同时操作多台服务器
- 保存密码或密钥后一键登录
选择建议
日常管理一两台服务器,或者你熟悉Linux操作,直接用系统自带的SSH即可,需要频繁上传下载文件、查看日志高亮,或者要同时连接多台服务器做对比,就装个图形化工具,最终取决于你的工作习惯,没有绝对的优劣。
linux连接服务器连接不上是什么原因
连接不上服务器是新手最容易卡住的地方,遇到这种情况,先别慌,按顺序排查,绝大多数问题能自己解决。
第一步:检查网络联通性
先确认本机到服务器的网络路径是否通,用ping命令测试:
ping 服务器IP
如果丢包或超时,说明网络不通,这时候用traceroute看一下卡在哪一跳:
traceroute 服务器IP
如果发现是国内到海外某个节点丢包严重,那大概率是国际带宽拥堵导致的,许多人选择连接海外服务器时遇到的就是这种问题,可以考虑优化网络线路或者使用中转,如果是本地局域网内连不通,检查网线、交换机、防火墙,以及服务器是否关机。
第二步:确认SSH服务在运行
网络通了但连不上,可能是服务器上的SSH服务挂了,或者没监听默认端口,如果你有云控制台(比如简米云后台的VNC),登录进去执行:
systemctl status sshd
如果没在运行,启动它:
systemctl start sshd
同时查看端口监听状态:
ss -tlnp | grep 22
没有输出说明sshd没监听,或者监听在了其他端口。
第三步:检查云平台安全组和本地防火墙
这是国内云服务器最常见的问题,登录云服务商控制台,找到安全组配置,确认入方向规则中放行了TCP 22端口,如果你的服务器凑巧开了系统防火墙还限制得比较严,用下面的命令临时放行(以firewalld为例):
firewall-cmd --permanent --add-port=22/tcp firewall-cmd --reload
Ubuntu系统自带ufw的话:
ufw allow 22/tcp
排查完上述三步,超过九成的连接问题都能定位,剩下的情况可能是SSH配置文件里改了端口没生效、服务器负载过高无响应,或者IP被恶意扫描封禁了,这时候查看一下系统日志:
journalctl -u sshd --since "10 minutes ago"
日志里会明确告诉你拒绝原因,比如Permission denied(密码错误)、Connection timed out(网络不通)、No route to host(路由问题),对症处理即可。
常见问题解答
在Linux命令行中能像SSH一样连接Windows服务器吗?
可以用远程桌面协议(RDP)连接Windows服务器,在Linux桌面端有Remmina、KRDC等工具,也可以直接用rdesktop命令行工具,不过Windows服务器如果开启了OpenSSH服务,同样可以使用SSH命令连接,但功能有限,无法执行PowerShell以外的所有图形化操作。
SSH连接缓慢,输入密码要等很久怎么办?
这种情况多数是SSH服务开启了DNS反向解析,修改服务器上的/etc/ssh/sshd_config文件,将UseDNS设置为no,同时确认GSSAPIAuthentication为no,然后重启sshd服务即可让登录响应明显变快。
从不同IP地址反复连接同一台服务器的端口会被封停吗?
如果短时间内从大量不同IP发起连接,云服务商的安全策略或服务器上的fail2ban工具会认为是扫描行为而临时封停来源IP,建议使用固定IP连接,或者为服务器配置白名单,避免被误判。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/698065.html





