菜鸟科技网

Mac连接服务器的命令是什么?

在Mac系统中连接服务器通常可以通过命令行工具实现,常用的协议包括SSH(Secure Shell)、SFTP(SSH File Transfer Protocol)以及FTP(File Transfer Protocol)等,其中SSH是最为常用和安全的远程连接方式,适用于远程管理服务器或执行命令;SFTP则基于SSH协议,用于安全的文件传输;而FTP虽然使用广泛,但因其安全性较低,在现代应用中逐渐被SFTP替代,以下将详细介绍Mac连接服务器的各种命令及其使用方法,包括基本语法、参数选项、常见场景操作以及注意事项。

Mac连接服务器的命令是什么?-图1
(图片来源网络,侵删)

SSH连接服务器

SSH协议通过加密通道实现远程登录和命令执行,是Mac系统连接Linux/Unix服务器的首选方式,基本命令格式为:ssh [用户名]@[服务器IP或域名] [端口号],用户名是服务器上的登录账户,服务器IP或域名是目标服务器的地址,端口号默认为22,若服务器修改了SSH端口,需使用-p参数指定,以用户root连接IP为168.1.100的服务器,命令为:ssh root@192.168.1.100;若端口号为2222,则需输入:ssh -p 2222 root@192.168.1.100

首次连接服务器时,系统会提示服务器的主机密钥未知,需输入yes确认连接,之后该主机会被添加到~/.ssh/known_hosts文件中,若需跳过主机密钥检查(不推荐,存在安全风险),可使用o StrictHostKeyChecking=no参数,对于需要密钥认证的场景,可通过-i参数指定私钥文件路径,ssh -i ~/.ssh/id_rsa root@192.168.1.100,其中id_rsa为存储在本地~/.ssh目录下的私钥文件。

SSH还支持通过配置文件简化连接命令,在~/.ssh/config文件中添加如下配置:

Host myserver
    HostName 192.168.1.100
    User root
    Port 2222
    IdentityFile ~/.ssh/id_rsa

配置完成后,可直接通过ssh myserver连接,无需重复输入IP、用户名等信息。

Mac连接服务器的命令是什么?-图2
(图片来源网络,侵删)

SFTP文件传输

SFTP基于SSH协议,提供安全的文件上传、下载和目录操作功能,基本命令格式为:sftp [用户名]@[服务器IP或域名]sftp root@192.168.1.100,连接成功后,会进入SFTP交互式环境,常用命令如下:

  • ls:列出服务器当前目录文件。
  • cd [目录名]:切换服务器目录。
  • get [文件名]:下载服务器文件到本地当前目录。
  • put [本地文件名]:上传本地文件到服务器当前目录。
  • mkdir [目录名]:在服务器创建目录。
  • rm [文件名]:删除服务器文件。
  • exit:退出SFTP会话。

若需在非交互模式下使用SFTP,可通过-b参数指定批处理脚本文件,创建脚本upload.txt为:

put localfile.txt /server/path/
exit

执行命令:sftp -b upload.txt root@192.168.1.100,即可自动完成文件上传。

FTP连接(不推荐)

尽管FTP协议简单易用,但数据传输为明文,易被窃听,仅适用于对安全性要求极低的场景,Mac系统内置ftp命令,基本格式为:ftp [服务器IP或域名],连接后需输入用户名和密码,常用命令包括:

Mac连接服务器的命令是什么?-图3
(图片来源网络,侵删)
  • get [文件名]:下载文件。
  • put [本地文件名]:上传文件。
  • ls:列出文件。
  • bye:退出连接。

建议使用更安全的SFTP替代FTP,若必须使用FTP,可考虑通过FTP over SSL/TLS(FTPS)加密连接,但需服务器支持。

其他实用命令与技巧

  1. 端口转发:SSH支持本地和远程端口转发,例如将本地端口8080映射到服务器的80端口:ssh -L 8080:localhost:80 root@192.168.1.100,之后访问http://localhost:8080即可访问服务器Web服务。
  2. 保持连接活跃:若长时间无操作导致连接断开,可使用-o ServerAliveInterval=60参数,每60秒发送一次心跳包:ssh -o ServerAliveInterval=60 root@192.168.1.100
  3. 多路复用:通过-N参数仅建立连接不执行命令,配合-f后台运行,适合端口转发等场景:ssh -f -N -L 8080:localhost:80 root@192.168.1.100

常见问题与注意事项

  • 连接超时:检查网络连通性、服务器IP/域名是否正确,以及防火墙是否开放SSH端口(默认22)。
  • 权限问题:确保本地私钥文件权限正确(通常为600),可通过chmod 600 ~/.ssh/id_rsa设置。
  • 密码/密钥错误:确认服务器用户名密码或密钥是否匹配,密钥需提前上传至服务器~/.ssh/authorized_keys文件中。

相关问答FAQs

Q1: 如何在Mac上通过SSH连接服务器时避免重复输入密码?
A1: 可通过SSH密钥对实现免密码登录,首先在本地生成密钥对(ssh-keygen -t rsa),将公钥(~/.ssh/id_rsa.pub追加到服务器的~/.ssh/authorized_keys文件中(可通过ssh-copy-id user@server命令自动完成),之后连接时系统会自动使用私钥认证,无需输入密码。

Q2: SFTP上传大文件时速度很慢,如何优化?
A2: 可通过以下方式提升传输速度:

  1. 检查网络带宽和延迟,避免跨网段传输;
  2. 使用-P参数指定并行传输(需服务器支持,如lftp工具);
  3. 调整SSH加密算法(在~/.ssh/config中添加Ciphers aes256-gcm@openssh.com等高效算法);
  4. 压缩文件后再传输(如使用tar打包)。
分享:
扫描分享到社交APP
上一篇
下一篇