连接服务器是日常运维、开发及管理工作中不可或缺的操作,通过特定命令可以实现对远程服务器的访问、文件传输、环境配置等,不同场景下,连接服务器的方式和命令存在差异,需根据服务器操作系统(如Linux、Windows)、服务类型(如远程终端、文件传输、数据库)及安全需求选择合适的工具和命令,本文将详细介绍常用连接服务器的命令,涵盖SSH、FTP、SFTP、RDP及数据库连接等场景,并说明其语法、参数及使用示例。
SSH远程连接命令
SSH(Secure Shell)是目前Linux/Unix系统最安全的远程连接协议,通过加密传输数据保障安全性,主流SSH客户端工具包括OpenSSH(Linux/macOS自带)、PuTTY(Windows)等,命令行操作通常使用ssh
命令。
基本语法
ssh [用户名]@[服务器IP或域名] [-p 端口号] [-i 私钥文件路径]
常用参数说明
参数 | 作用 |
---|---|
-p |
指定SSH服务端口,默认为22(若服务器修改了默认端口需手动指定) |
-i |
指定私钥文件路径(用于密钥认证,避免密码泄露) |
-C |
启用数据压缩,适合网络环境较差时使用 |
-v |
显示详细连接过程,用于调试连接问题 |
-o |
设置连接选项,如-o StrictHostKeyChecking=no 跳过首次连接的主机密钥验证 |
示例
- 默认端口连接:以
root
用户连接IP为168.1.100
的Linux服务器ssh root@192.168.1.100
- 指定端口连接:若服务器SSH端口为
2222
ssh user@192.168.1.100 -p 2222
- 密钥认证连接:使用
~/.ssh/id_rsa
私钥连接ssh -i ~/.ssh/id_rsa user@192.168.1.100
FTP/SFTP文件传输命令
FTP(File Transfer Protocol)和SFTP(SSH File Transfer Protocol)常用于本地与服务器之间的文件传输,其中SFTP基于SSH协议,安全性更高(加密传输),推荐优先使用。
FTP命令
FTP是传统文件传输协议,传输过程为明文,适合对安全性要求不高的场景。
基本语法
ftp [服务器IP或域名]
常用交互命令
命令 | 作用 |
---|---|
user |
输入用户名(如user admin ) |
pass |
输入密码(输入时不会显示字符) |
ls |
列出服务器当前目录文件 |
get [文件] |
下载服务器文件到本地 |
put [文件] |
上传本地文件到服务器 |
bye |
退出FTP连接 |
示例
ftp 192.168.1.100 # 连接后输入用户名和密码,执行以下操作: ls # 查看服务器文件 get server.log # 下载server.log到本地 put local.txt # 上传local.txt到服务器 bye # 退出
SFTP命令
SFTP通过SSH通道传输文件,安全性更高,且支持交互式和命令行批量操作。
基本语法
sftp [用户名]@[服务器IP或域名] [-P 端口号]
常用交互命令
命令 | 作用 |
---|---|
ls [路径] |
列出服务器指定目录文件 |
cd [路径] |
切换服务器当前目录 |
get [远程文件] [本地路径] |
下载服务器文件到本地(可指定本地路径) |
put [本地文件] [远程路径] |
上传本地文件到服务器(可指定远程路径) |
mkdir [目录名] |
在服务器创建新目录 |
exit |
退出SFTP连接 |
示例
sftp user@192.168.1.100 # 连接后输入密码,执行以下操作: ls /home/user # 查看/home/user目录 get /var/log/syslog # 下载syslog到本地当前目录 put ~/data.txt /tmp # 上传本地data.txt到服务器/tmp目录 exit # 退出
Windows远程桌面连接命令
Windows服务器通常通过RDP(Remote Desktop Protocol)进行图形化远程连接,命令行工具为mstsc
(Microsoft Terminal Services Client),支持通过命令启动连接并配置参数。
基本语法
mstsc [服务器IP或域名] [参数]
常用参数说明
参数 | 作用 |
---|---|
/v:服务器IP |
指定要连接的服务器地址(核心参数,若省略会弹出对话框手动输入) |
/admin |
连接到服务器的管理员会话(适用于Windows Server) |
/console |
同/admin ,旧版Windows Server兼容 |
/f |
全屏模式连接 |
/w:宽度 /h:高度 |
设置窗口连接尺寸(如/w:1280 /h:720 ) |
/u:用户名 |
指定登录用户名(需配合/p 使用,避免手动输入密码) |
/p:密码 |
指定登录密码(注意:命令行记录密码可能存在安全风险,建议谨慎使用) |
示例
- 基本连接:弹出对话框,手动输入服务器IP和用户名密码
mstsc
- 命令行直接连接:连接
168.1.200
,全屏模式,用户名为admin
mstsc /v:192.168.1.200 /f /u:admin
数据库连接命令
服务器常部署数据库服务(如MySQL、PostgreSQL),需通过客户端命令连接数据库进行操作。
MySQL连接命令
MySQL客户端工具mysql
通过命令行连接数据库服务器。
基本语法
mysql -h [服务器IP] -P [端口] -u [用户名] -p[密码] [数据库名]
常用参数说明
参数 | 作用 |
---|---|
-h |
指定数据库服务器IP,默认为localhost |
-P |
指定MySQL服务端口,默认为3306 |
-u |
指定数据库用户名 |
-p |
指定密码(注意:-p 后直接跟密码无空格,如-p123456 ;若密码为空则仅-p ) |
-D |
指定连接后默认选择的数据库名(与数据库名位置参数等效) |
示例
# 连接本地MySQL,用户名为root,密码为123456,选择test数据库 mysql -h localhost -P 3306 -u root -p123456 test # 或使用位置参数指定数据库名 mysql -h 192.168.1.100 -u root -p123456 test
PostgreSQL连接命令
PostgreSQL使用psql
客户端连接数据库。
基本语法
psql -h [服务器IP] -p [端口] -U [用户名] -d [数据库名] -W
常用参数说明
参数 | 作用 |
---|---|
-h |
指定服务器IP,默认为localhost |
-p |
指定端口,默认为5432 |
-U |
指定用户名 |
-d |
指定数据库名 |
-W |
强制输入密码(避免密码明文显示在命令历史中) |
示例
# 连接IP为192.168.1.150的PostgreSQL,用户名为postgres,密码手动输入 psql -h 192.168.1.150 -p 5432 -U postgres -d mydb -W
注意事项
- 安全性优先:避免在命令中直接明文记录密码(尤其是生产环境),推荐使用SSH密钥认证、SFTP密钥登录、数据库配置文件存储密码等方式。
- 端口与防火墙:确保服务器开放对应端口(如SSH默认22、RDP默认3389、MySQL默认3306),并检查防火墙规则是否允许访问。
- 协议选择:优先使用加密协议(如SSH代替Telnet、SFTP代替FTP),避免数据在传输过程中被窃取。
相关问答FAQs
Q1: SSH连接失败提示“Permission denied (publickey,password)”怎么办?
A: 该错误通常由认证方式导致,可按以下步骤排查:
- 确认用户名和密码正确(若使用密码认证);
- 若使用密钥认证,检查本地私钥文件(
~/.ssh/id_rsa
)是否与服务器~/.ssh/authorized_keys
中的公钥匹配; - 检查服务器SSH配置文件(
/etc/ssh/sshd_config
)中是否允许密码认证(PasswordAuthentication yes
)或密钥认证(PubkeyAuthentication yes
),并重启SSH服务(systemctl restart sshd
)。
Q2: FTP上传文件时提示“550 Permission denied”如何解决?
A: 该错误通常为服务器权限问题,解决方法:
- 确认登录用户对目标目录有写权限(可通过
ls -ld [目录名]
查看目录所有者及权限); - 若权限不足,可通过
chmod
修改目录权限(如chmod 755 /home/user/upload
)或联系管理员授权; - 检查服务器是否启用被动模式(PASV),部分防火墙可能需开启被动模式端口范围(可在FTP客户端配置中设置)。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/31801.html