Linux访问服务器是运维、开发及系统管理中的核心操作,通过命令行工具实现远程服务器的管理、文件传输及系统维护,相比图形界面,命令行操作更高效、资源占用更低,尤其适合服务器这类需要稳定性和安全性的场景,本文将详细介绍Linux访问服务器的常用工具、连接步骤、安全配置及常见问题处理。

常用访问工具及对比
Linux环境下访问服务器的主流工具以SSH(Secure Shell)为核心,辅以FTP/SFTP等文件传输工具,不同工具的适用场景和安全性差异较大,具体对比如下:
| 工具名称 | 用途 | 默认端口 | 安全性 | 特点 |
|---|---|---|---|---|
| SSH | 远程登录、命令执行 | 22 | 高 | 加密传输,支持端口转发、X11转发 |
| Telnet | 远程登录 | 23 | 低 | 明文传输,已基本被淘汰 |
| SFTP | 文件传输 | 22 | 高 | 基于SSH协议,加密传输 |
| FTP | 文件传输 | 21 | 低 | 明文传输,需搭配防火墙限制 |
SSH因加密传输和丰富的功能成为首选,而SFTP则用于安全的文件传输场景,Telnet和FTP因安全性问题,仅在特殊网络环境下使用。
SSH连接详细步骤
基础连接命令
SSH连接的基本格式为:ssh [用户名]@[服务器IP] -p [端口号],以root用户连接IP为192.168.1.100的服务器(默认端口22):
ssh root@192.168.1.100
首次连接时会提示服务器密钥指纹,输入yes确认即可,若服务器修改了SSH端口(如2222),需通过-p参数指定:
ssh root@192.168.1.100 -p 2222
密钥登录(免密登录)
为提升安全性,建议使用SSH密钥对代替密码登录,步骤如下:
- 生成密钥对:本地执行
ssh-keygen -t rsa -b 4096,按提示生成私钥(~/.ssh/id_rsa)和公钥(~/.ssh/id_rsa.pub)。 - 上传公钥到服务器:使用
ssh-copy-id命令自动上传:ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.100 -p 2222
若服务器未安装
ssh-copy-id,可手动将公钥内容追加到服务器~/.ssh/authorized_keys文件中,并设置权限:
mkdir -p ~/.ssh chmod 700 ~/.ssh echo "公钥内容" >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys
安全配置要点
为避免服务器被未授权访问,需对SSH服务进行安全加固:
- 修改默认端口:编辑
/etc/ssh/sshd_config,将Port 22改为其他端口(如2222),重启SSH服务:systemctl restart sshd。 - 禁用root登录:在
sshd_config中设置PermitRootLogin no,强制普通用户登录后切换至root。 - 限制登录用户:添加
AllowUsers user1 user2,仅允许指定用户登录。 - 启用 fail2ban:防止暴力破解,通过
fail2ban监控SSH登录失败日志,自动封禁恶意IP。
文件传输操作
通过SSH协议,可使用scp(安全复制)和sftp(安全文件传输协议)实现文件传输:
- scp命令:本地文件上传至服务器:
scp local.txt root@192.168.1.100:/opt/;服务器文件下载至本地:scp root@192.168.1.100:/opt/remote.txt ./。 - sftp交互式传输:连接
sftp root@192.168.1.100后,使用put上传、get下载文件,如put local.txt、get remote.txt。
常见问题处理
- 连接超时:检查服务器防火墙是否开放SSH端口(如
firewall-cmd --list-ports),确认SSH服务是否运行(systemctl status sshd)。 - 权限被拒绝:确认
~/.ssh/authorized_keys文件权限为600,所属用户为当前登录用户;检查公钥格式是否正确(需以ssh-rsa开头)。 - 端口连接失败:确认客户端
-p参数与服务器sshd_config中设置的端口一致,检查服务器防火墙是否允许该端口访问。
FAQs
问题1:SSH连接提示“Permission denied (publickey,password)”怎么办?
解答:通常因密钥认证失败或密码错误导致,可尝试以下步骤:
- 确认服务器
~/.ssh/authorized_keys文件包含正确的公钥内容,且权限为600; - 检查
/etc/ssh/sshd_config中PasswordAuthentication是否为yes(若需密码登录); - 尝试使用
-v参数调试连接:ssh -v root@192.168.1.100,查看具体错误信息。
问题2:如何避免SSH暴力破解攻击?
解答:可通过以下措施提升安全性:
- 修改默认SSH端口,避免使用22端口;
- 禁用密码登录,强制使用密钥认证(设置
PasswordAuthentication no); - 安装并配置
fail2ban,监控SSH登录日志,对连续失败IP进行封禁; - 限制可登录用户,在
sshd_config中添加AllowUsers指令,仅允许特定用户访问。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/27004.html