SSH的一个缺点是顾客端没有直接传输文件的形式。登陆后,用户使用一个输入,提供与通过屏幕和按键进行本地访问时几乎相同的功能。SFTP通过使用一个单独的通讯程序清除了这一缺点。但是,一些顾客端,如十分流行的PuTTY程序,将标准集成到其界面中,并提供通过单独联接同时使用SSH和SFTP的可能性。

但是,有一个名为SftpGo的便于使用的程序,它用Go编程语言编撰。它是一个功能齐全且高度可配置的SFTP服务器,支持可选的HTTP/S、FTP/S和WebDAV。我们可以在所有流行的Linux系统上安装它。它还支持多种储存前端,如本地文件系统、加密的本地文件系统、S3(兼容)对象储存、GoogleCloudStorage、AzureBlobStorage和SFTP。有关该软件的更多信息,可以访问其GitHub页面。

在Ubuntu上安装SFTPGo软件有两种方式,一种是使用PPA库房,另一种是使用其Debian二补码文件。这儿,我们将展示这两种方式。

1使用PPA库房的方式1.更新Ubuntu

Linux中,在安装任何应用程序之前运行系统更新命令是一个好习惯。这将安装我们系统上所有可用的最新更新。

 sudo apt update && sudo apt upgrade

据悉,安装一个额外的包以添加PPA库房。

 sudo apt install software-properties-common

Ubuntu SFTP 服务器配置_linux操作系统安装 下载_SFTPGo 安装教程

2.在Ubuntu24.04或22.04上添加SFTPGoPPA库房

如今,使用命令在Ubuntu24.04或22.04上添加SFTPGo的PPA库房,便于使用系统的APT包管理器像安装其他标准软件一样安装该软件。

 sudo add-apt-repository ppa:sftpgo/sftpgo

Ubuntu SFTP 服务器配置_SFTPGo 安装教程_linux操作系统安装 下载

更新系统以刷新APT包索引缓存:

 sudo apt update

linux操作系统安装 下载_Ubuntu SFTP 服务器配置_SFTPGo 安装教程

3.在Ubuntu24.04或22.04上安装SFTPGo

最后,在系统上安装该软件,便于像使用其他应用程序一样轻松访问它。

 sudo apt install sftpgo

Ubuntu SFTP 服务器配置_linux操作系统安装 下载_SFTPGo 安装教程

安装完成后,我们可以检测它是否作为后台服务正确运行。

 systemctl status sftpgo --no-pager -l

SFTPGo 安装教程_Ubuntu SFTP 服务器配置_linux操作系统安装 下载

2使用Debian二补码文件的方式4.下载SFTPGoDeb二补码文件

这些不想在系统中添加额外PPA库房的人可以直接下载可执行的Debian二补码文件。

这儿,我们使用命令行下载它;您也可以访问该工具的GitHub发布页面直接获取。

将VER值设置为SFTPgo的最新版本——

 VER=$(curl -s https://api.github.com/repos/drakkan/sftpgo/releases/latest |grep tag_name | cut -d '"' -f 4 |sed 's/v//g')

如今下载它:

 wget https://github.com/drakkan/sftpgo/releases/download/v$VER/sftpgo_$VER-1_amd64.deb

Ubuntu SFTP 服务器配置_linux操作系统安装 下载_SFTPGo 安装教程

5.在Debian/Ubuntu上安装SFTPGo

SFTPGo 安装教程_linux操作系统安装 下载_Ubuntu SFTP 服务器配置

获取和安装SFTPGo的命令对于所有基于Ubuntu或Debian的Linux系统都是相同的。

 sudo dpkg -i sftpgo_*_amd64.deb

Ubuntu SFTP 服务器配置_SFTPGo 安装教程_linux操作系统安装 下载

6.在Ubuntu24.04或22.04的防火墙中打开端口

我们须要在系统中打开一些端口,或则在您使用的任何其他防火墙中打开linux操作系统安装 下载,便于可以从其他网路访问它们。

 sudo ufw allow 8080
 sudo ufw allow 2022
 sudo ufw allow 8090

7.访问Web图形界面

使用上述任何一种方式安装后,SFTPGo将安装在您的系统中。如今,我们可以访问其Web图形界面。因此,只需打开本地系统浏览器,并将其指向您安装SFTPGo的服务器或桌面IP地址,后跟端标语8080。

比如:

 http://server-ip-addres:8080

创建管理员用户

访问Web图形界面后,首先会要求您创建一个管理员账户。

linux操作系统安装 下载_Ubuntu SFTP 服务器配置_SFTPGo 安装教程

8.创建新用户

linux操作系统安装 下载_SFTPGo 安装教程_Ubuntu SFTP 服务器配置

拥有SFTPGo仪表板后,让我们创建一个新用户,便于使用任何网路或本地顾客端(如Filezilla)访问储存数据。因此linux系统编程,请点击“用户”选项,之后点击+图标。

SFTPGo 安装教程_linux操作系统安装 下载_Ubuntu SFTP 服务器配置

添加您想要使用的用户名和密码。您也可以添加私钥(假如须要)。

这些想要访问本地文件系统的用户请选择该选项。其他选项,如AWSS3和GoogleCloud储存,也可用;而且linux手机,对于那些,首先须要从文件夹选项中进行配置。

9.使用顾客端联接到您的SFTPGo

这儿,我们使用FileZilla顾客端。倘若您乐意,也可以使用其他顾客端。打开它并输入您的服务器IP地址以及SFTP合同:

示例:

sftp://server-ip-address

然后,输入您在SFTPGo中创建的用户名和密码,并使用端口2022。最后,点击“快速联接”按钮,检测我们的SFTPGo服务器是否确切运行。

接受秘钥

10.将SFTPGo挂载为WebDav

这些希望像使用本地c盘一样使用远程服务器储存文件系统的用户可以将SFTPGo挂载为WebDav。

首先启用WebDav:

编辑SFTPGo配置文件并为WebDav设置端口。

 sudo su  -
 nano /etc/sftpgo/sftpgo.json

linux操作系统安装 下载_SFTPGo 安装教程_Ubuntu SFTP 服务器配置

找到WebDav部份,将端口从0设置为8090。保存文件,按Ctrl+O,按Enter键,之后使用Ctrl+X退出。

SFTPGo 安装教程_Ubuntu SFTP 服务器配置_linux操作系统安装 下载

在Windows上挂载WebDav

首先,对系统注册表进行一些修改。按Win+R键并输入regedit以打开注册表。

转入:

ComputerHKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesWebClientParameters

如今,双击“BasicAuthLevel”。

将值1修改为2。按确定按键。

重启WebDav服务:

以管理员身分运行PowerShell并依次输入以下命令。

 net stop webclient
 net start webclient

在Windows的“此笔记本”或“我的笔记本”中,从菜单中选择“映射网路驱动器”。

输入您的SFTPGo地址和端标语,格式如下。

 http://server-ip:8090

当提示输入用户名和密码时linux操作系统安装 下载,请输入。

很快,您将在系统上像本地驱动器一样挂载该驱动器。

对于Linux,如Ubuntu

在Ubuntu上打开文件管理器,转入其他位置,并输入服务器IP地址以及端口,如屏幕截图所示。

比如:

 dav://server-ip-address:8090

点击联接按键。

输入您在SFTPGo中创建的用户名和密码。

最后,您将挂载该驱动器。

11.怎么更新

使用PPA安装SFTPGo的用户须要运行系统的更新和升级命令,如下所示:

 sudo apt update && sudo apt upgrade

而使用Debian二补码文件的用户须要自动下载SFTPGo的最新二补码文件,如本文所示,并使用DPKG工具安装。

12.卸载或删掉SFTPGo–Ubuntu24.04或22.04

假如您不再须要Ubuntu24.04或22.04系统上的这个SFTP程序,请使用以下命令将其删掉:

 sudo apt autoremove --purge sftpgo

假如您正在使用它,请删掉PPA:

 sudo add-apt-repository --remove ppa:sftpgo/sftpgo

Tagged:
Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复