+7 (7232) 91-95-12

帮助

通过 SFTP (SSH 文件传输协议) 操作服务器

SFTP (SSH 文件传输协议) 是一种用于在远程服务器上管理文件的安全协议。它允许您传输文件、创建目录、管理访问权限等。对于用户而言,操作 SFTP 与操作 FTP 非常相似,但连接是通过加密的 SSH 协议进行的。

要连接 SFTP,您可以使用 FTP 客户端,例如 FileZilla。

连接参数

通常,连接 SFTP 需要以下参数:

  • 主机:您的服务器 IP 地址(您可以在管理面板的服务器主页上找到它)。
  • 用户名:在服务器上创建的用户名。
  • 密码:该用户的密码。
  • 端口:22。

如果您使用 RSA 密钥进行身份验证,还需要输入密码短语(如果在创建密钥时设置了的话)并上传公钥。

我们强烈建议避免以 root 用户身份通过 SFTP 连接。这不仅不安全,而且不方便。如果您以 root 身份登录,您将位于 root 的家目录(通常是 /root),您必须在文件结构中移动才能访问项目目录。此外,如果您以 root 身份上传文件,这些文件将属于 root:root 用户和组,Web 服务器将无法读取它们。这可能会导致您的网站出现文件访问错误。

Fastpanel

如果您使用 Fastpanel,安装时会创建一个 fastuser 用户。要以此用户身份连接,请使用以下参数:

  • 主机:您的服务器 IP 地址。
  • 用户名:fastuser。
  • 密码:为 fastuser 用户设置的密码(请注意,这与 root 密码不同)。
  • 端口:22。

成功连接后,您将进入 /var/www/fastuser/data 目录。

网站通常位于该目录的子文件夹中:/var/www/fastuser/data/www/域名。

如果您创建了其他用户(例如 user),请使用其参数进行连接。

  • 主机:服务器 IP 地址
  • 用户名:user
  • 密码:user 用户的密码
  • 端口:22

成功连接后,您将进入 /var/www/user/data 目录。

网站目录位于以下地址:/var/www/user/data/www/域名。

VestaCP

默认情况下,VestaCP 会创建 admin 用户。要以此用户身份连接,请使用以下参数:

  • 主机:服务器 IP 地址
  • 用户名:admin
  • 密码:admin 用户的密码(默认与 root 密码相同)
  • 端口:22

成功连接后,您将进入 /home/admin/ 目录。

网站目录位于以下地址:/home/admin/web/域名。

如果您在 VestaCP 中创建了其他用户(例如 user)并以其名义在 WEB 版块添加了网站,请使用以下参数进行 SFTP 连接:

  • 主机:服务器 IP 地址
  • 用户名:user
  • 密码:user 用户的密码
  • 端口:22

成功连接后,您将进入 /home/user/ 目录。

网站目录位于以下地址:/home/user/web/域名。

ISPmanager

在连接 SFTP 之前,请确保所需用户拥有 Shell 访问权限。可以在 ISPmanager 中检查:进入 账号 - 用户,选择所需用户并点击 修改

确保勾选了 Shell 访问权限 选项。

默认情况下,ISPmanager 会创建 www-root 用户。如果您以此用户身份在“WWW 域名”版块放置了网站,请使用以下参数进行 SFTP 连接:

  • 主机:服务器 IP 地址
  • 用户名:www-root
  • 密码:www-root 用户的密码(默认与 root 密码相同)
  • 端口:22

成功连接后,您将进入 /var/www/www-root/data/ 目录。

网站目录位于以下地址:/var/www/www-root/data/www/域名。

如果您创建了其他用户(例如 user)并以其名义添加了网站,请使用以下参数进行连接:

  • 主机:服务器 IP 地址
  • 用户名:user
  • 密码:user 用户的密码
  • 端口:22

成功连接后,您将进入 /var/www/user/data 目录。

网站目录位于以下地址:/var/www/user/data/www/域名。

Bitrix 7

默认情况下,Bitrix 7 系统会创建 bitrix 用户。要进行 SFTP 连接,请使用以下参数:

  • 主机:服务器 IP 地址
  • 用户名:bitrix
  • 密码:bitrix 用户的密码(默认与 root 密码相同)
  • 端口:22

成功连接后,您将进入 /home/bitrix/ 目录。

网站目录位于以下地址:/home/bitrix/www/(主站)和 /home/bitrix/ext_www/域名(通过 BitrixVM 创建的其他网站)。

LAMP

在此组合中,默认情况下 Web 服务器使用 www-data 用户运行。如果您希望以其他用户身份操作(包括通过 SFTP 连接),请执行以下设置。

首先通过 SSH 连接到服务器并执行以下操作:

  1. 创建一个新的 SFTP 用户(本例中使用 sftpuser),家目录设为 /var/www/:
useradd -d /var/www/ sftpuser
  1. 为新用户设置密码:
passwd sftpuser

系统会提示输入密码 —— 请输入。请注意,输入时屏幕上不会显示字符。

  1. 将用户添加到 www-data 组:
usermod -aG www-data sftpuser

将 www-data 设为用户的主要组:

usermod -g www-data sftpuser
  1. 打开 Nginx 配置文件:
nano /etc/nginx/nginx.conf

在文本编辑器中打开 nginx.conf 文件:

nano /etc/nginx/nginx.conf

找到此行:

user www-data;

并将其替换为:

user sftpuser;

保存更改并关闭编辑器。

要应用更改,请重启 Nginx:

service nginx restart

现在,使用以下命令检查 Nginx Web 服务器是以哪个用户身份运行的:

ps auxwwww | grep nginx

您将看到 Web 服务器正以 sftpuser 用户身份运行。

  1. 对于 Apache2 Web 服务器,用户设置在以下文件之一中执行:

在 Ubuntu / Debian 中:

/etc/apache2/apache2.conf

# 或:

/etc/apache2/envvars

在 CentOS 中:

/etc/httpd/httpd.conf

# 或:

/etc/httpd/envvars

在我们的 LAMP 组合中,您需要在 /etc/apache2/envvars 文件中设置变量。

要了解 www-data 用户在哪个配置文件中定义,您可以逐个检查这些文件是否包含该行。找到包含 www-data 的文件后,将其值替换为 sftpuser。

打开 Apache2 服务器的变量文件:

在 Ubuntu / Debian 中:

nano /etc/apache2/envvars

在 CentOS 中:

nano /etc/httpd/envvars

找到此行:

export APACHE_RUN_USER=www-data

并将其替换为:

export APACHE_RUN_USER=sftpuser

保存更改并关闭文件。

然后重启 Web 服务器。对于 Debian/Ubuntu,执行:

service apache2 restart

对于 CentOS,使用:

service httpd restart

使用以下命令检查 Apache2 以哪个用户身份运行:

ps auxwwww | grep apache
  1. 为存放网站的目录(用户家目录)设置正确的访问权限、所有者和组。依次执行以下命令:
find /var/www -type d -exec chmod 755 {} ;
find /var/www -type f -exec chmod 644 {} ;
chown -R sftpuser:www-data /var/www/

设置完成。

现在,使用以下身份验证数据测试 SFTP 连接:

  • 主机:服务器 IP 地址
  • 用户名:sftpuser
  • 密码:sftpuser 用户的密码(在第 2 步中设置)
  • 端口:22

如有任何疑问,请联系我们