SiteGround怎么用FTP、SFTP和SSH连接服务器?端口18765和FileZilla设置

蜗牛大人Siteground主机教程

本文含推广链接:通过此链接购买,本站可获得佣金,不影响你的价格。了解详情

大部分WordPress操作在后台就能完成,但遇到下面这些情况,需要直接连接服务器的文件:

  • 主题或插件把后台搞崩溃了,需要手动删除或改名;
  • 上传超大的主题、备份文件,后台上传限制太小;
  • 修改wp-config.php、.htaccess等配置文件。

SiteGround有三种连接方式:FTP、SFTP、SSH。要点是:FTP账号是账号加密码,SFTP和SSH用的是密钥,端口是18765。

三种方式的区别

方式端口登录方式加密适合
FTP21账号 + 密码普通FTP不加密简单传文件
SFTP18765SSH密钥加密安全传文件,推荐
SSH18765SSH密钥加密命令行操作、WP-CLI

SiteGround使用自定义端口18765,而不是常见的22。客户端里忘了改端口,是连接失败最常见的原因。

官方的FTP说明里提到,普通FTP和带密码的FTP连接是不加密的,SFTP有加密保护,所以能用SFTP就尽量用SFTP。

方法一:创建FTP账号

  1. 进入网站的Site Tools;
  2. 打开Site → FTP Accounts;
  3. 创建一个FTP账号,设置用户名、密码和可访问的目录;
  4. 回到FTP客户端(FileZilla、Cyberduck、WinSCP等),用创建好的账号和密码连接,端口填21。

主机名和具体字段以Site Tools里FTP Accounts页面显示的为准。

方法二:用SSH密钥连接SFTP和SSH

SFTP和SSH不用账号密码登录,而是用密钥:

  1. 进入网站的Site Tools;
  2. 打开Devs → SSH Keys Manager;
  3. 生成一对密钥(会让你设置一个密钥密码);
  4. 在这个密钥右侧的Actions(三点菜单)里:

- 复制私钥(Private Key),保存成本地文件; - 查看SSH Credentials,里面有用户名和主机名。

如果同一个账号下有多个网站,想用同一个密钥管理,可以点击客户区右上角的头像,选择Multisite SFTP Access,一次配置所有网站。

重要提醒:SSH密钥能访问网站的全部文件,没法限制到某个文件夹。私钥要妥善保存,不要发给别人,也不要放进公开的代码仓库。

用FileZilla连接SFTP

按SiteGround官方教程的流程:

  1. 把私钥内容保存成本地文件。大部分FTP客户端需要.ppk格式,FileZilla会在导入时提示转换;
  2. 打开FileZilla,进入设置 → SFTP;
  3. 点击Add keyfile(添加密钥文件),选中刚保存的私钥文件,按提示输入你设置的密钥密码,并同意转换格式;
  4. 在站点管理器里新建站点,协议选SFTP,主机名、用户名填SSH Credentials里显示的内容,端口填18765;
  5. 第一次连接时会提示服务器指纹,点击确定。如果经常连接,可以勾选“始终信任此主机”。

连接成功后,网站文件在public_html目录里,WordPress的主题、插件在wp-content目录下。

用命令行连接SSH

Mac或Linux的终端里,格式是:

ssh -p 18765 用户名@主机名 -i 私钥文件路径

只传文件可以用sftp -P 18765 用户名@主机名。注意ssh的端口参数是小写-p,sftp是大写-P。

连接失败怎么排查

  1. 端口没改:SFTP和SSH必须是18765;
  2. 密钥格式不对:FileZilla需要.ppk,其他客户端一般用原始私钥文件;
  3. 复制私钥时漏了开头或结尾的标记行,粘贴后文件不完整;
  4. FTP账号和SSH密钥混淆:FTP用账号密码、端口21,SFTP用密钥、端口18765,两套互不通用;
  5. 本地网络屏蔽了非标准端口:公司或学校网络偶尔会拦截,换网络试一下;
  6. 服务器IP或主机名用错:以Site Tools里显示的为准,域名刚改DNS时,用域名可能还解析到旧服务器。

改文件之前先备份

直接改服务器上的文件,一旦写错网站就会打不开。动手之前先备份网站,备份方法见《WordPress网站怎么备份?》。

如果是因为PHP版本问题要改配置,可以直接在后台切换,见《SiteGround怎么切换PHP版本》。更多教程见《SiteGround主机教程汇总》。

文章版权归作者所有,转载请注明出处:https://woniune.com/posts/siteground-sftp-ssh-connect/
上一篇SiteGround访问量超限会怎样?CPU用量、inode和“服务被限制”说明

相关推荐