Linux云服务器搭建ftp站点
2021/5/8 7:30:36
本文主要是介绍Linux云服务器搭建ftp站点,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
首先购买一台华为云服务器,华为云注册链接如下:
https://account.huaweicloud.com/obmgr/invitation/invitation.html?bpName=000000010000000214B714946DEF17C76A35AFB4E32B99E369FD4CA63644DBB4124BA4D1F31F2F94F32B22AE4707A6DB5D1A35B185F5C48E9B7CDF4327BF3EC2F88D1B4D6B690417&inviteCode=0000000100000002859E1B8DDD3BDD0702E10B4132559DF8392F7EDF394F16D06A3FD0BACDC1E66E&bindType=1&isDefault=1
注册成功后,进入下面链接购买华为云服务器,购买的时候选择操作系统为:CentOS 7.2 64
https://www.huaweicloud.com/product/ecs.html
接下来,正式讲解:Linux云服务器搭建ftp站点
Linux实例搭建FTP站点具体操作步骤如下:
- 安装vsftpd。
- 配置vsftpd。
- 设置安全组。
- 客户端测试。
操作步骤
- 安装vsftpd。
- 登录弹性云服务器。
- 执行以下命令安装vsftpd。
yum install -y vsftpd
回显如下类似信息时,表示软件安装成功。
- 执行以下命令设置FTP服务开机自启动。
systemctl enable vsftpd.service
- 执行以下命令启动FTP服务。
systemctl start vsftpd.service
- 执行以下命令查看FTP服务端口。
netstat -antup | grep ftp
回显如下类似信息。
- 配置vsftpd。
vsftpd安装后默认开启了匿名FTP的功能,使用匿名FTP,用户无需输入用户名密码即可登录FTP服务器,但没有权限修改或上传文件。用户如果试图使用Linux操作系统中的账号登录服务器,将会被vsftpd拒绝,但可以在vsftpd里配置用户账号和密码登录。以下操作以在vsftpd 里配置用户账号和密码登录FTP服务器为例。
- 执行以下命令创建“ftpadmin”用户。
此处“ftpadmin”用户为示例,可根据实际情况创建相应的用户。
useradd ftpadmin
- 执行以下命令并按照提示设置“ftpadmin”用户密码。
passwd ftpadmin
- 执行以下命令创建供FTP使用的文件目录,此处以“/var/ftp/work01”为例。
mkdir /var/ftp/work01
- 执行以下命令将创建的文件目录所有者改为用于登录FTP的本地用户。
chown -R ftpadmin:ftpadmin /var/ftp/work01
- 修改“vsftpd.conf”配置文件。
- 执行以下命令打开配置文件“vsftpd.conf”。
vi /etc/vsftpd/vsftpd.conf
- 按i键进入编辑模式。
- 修改打开的“vsftpd.conf”文件。
可根据实际需求选择将FTP配置为主动模式或者被动模式。如果华为云上的服务器需要通过公网IP地址访问华为云上的实例搭建的FTP服务器时,需要将FTP服务器配置为被动模式。
- 主动模式需要配置的参数如下:
<span style="color:#252b3a"><span style="color:#1d2129 !important">#设置以下参数,不允许匿名登录FTP服务器,允许本地用户登录FTP服务器,并指定FTP本地用户使用的文件目录。 anonymous_enable=NO #不允许匿名登录FTP服务器 local_enable=YES #允许本地用户登录FTP服务器 local_root=<em id="ZH-CN_TOPIC_0115828034__zh-cn_topic_0115184955_i46554396175654"><strong id="ZH-CN_TOPIC_0115828034__zh-cn_topic_0115184955_b16336380175654">/var/ftp/work01</strong></em> #FTP本地用户使用的文件目录 #设置以下参数,限制用户只能访问自身的主目录。 chroot_local_user=YES #所有用户都被限制在其主目录 chroot_list_enable=YES #启用例外用户名单 chroot_list_file=/etc/vsftpd/chroot_list #例外用户名单 allow_writeable_chroot=YES </span></span>
- 被动模式除了需要配置主动模式所需的所有参数外,还需要配置的参数如下:
<span style="color:#252b3a"><span style="color:#1d2129 !important">#设置以下参数,配置FTP支持被动模式。并指定FTP服务器的公网IP地址,以及可供访问的端口范围,端口范围请根据实际环境进行设置。 listen=YES listen_ipv6=NO pasv_address=<strong id="ZH-CN_TOPIC_0115828034__zh-cn_topic_0115184955_b30952514175654"><em id="ZH-CN_TOPIC_0115828034__zh-cn_topic_0115184955_i10137177175654">xx.xx.xx.xx</em></strong> #FTP服务器的公网IP地址 pasv_min_port=<strong id="ZH-CN_TOPIC_0115828034__zh-cn_topic_0115184955_b24125737175654"><em id="ZH-CN_TOPIC_0115828034__zh-cn_topic_0115184955_i15805041175654">3000</em></strong> #被动模式下的最小端口 pasv_max_port=<strong id="ZH-CN_TOPIC_0115828034__zh-cn_topic_0115184955_b8027643175654"><em id="ZH-CN_TOPIC_0115828034__zh-cn_topic_0115184955_i5139929175654">3100</em></strong> #被动模式下的最大端口</span></span>
- 主动模式需要配置的参数如下:
- 按Esc键退出编辑模式,并输入:wq保存后退出。
- 在“/etc/vsftpd/”目录下创建“chroot_list”文件。
touch chroot_list
“chroot_list”文件是限制在主目录下的例外用户名单。如果需要设置某个用户不受只可以访问其主目录的限制,可将对应的用户名写入该文件。如果没有例外也必须要有“chroot_list”文件,内容可为空。
- 执行以下命令打开配置文件“vsftpd.conf”。
- 执行以下命令重启vsftpd服务使配置生效。
systemctl restart vsftpd.service
- 执行以下命令创建“ftpadmin”用户。
- 设置安全组。
搭建好FTP站点后,需要在弹性云服务器安全组的入方向添加一条放行FTP端口的规则,具体步骤参见为安全组添加安全组规则。
根据FTP的不同模式需要放通的端口如下:
- FTP为主动模式时:端口21。
- FTP为被动模式时:端口21,以及配置文件“/etc/vsftpd/vsftpd.conf”中参数“pasv_min_port”和“pasv_max_port”之间的所有端口。
- 客户端测试。
打开客户端的计算机,在路径栏输入“ftp://FTP服务器IP地址:FTP端口”(如果不填端口则默认访问21端口) 。弹出输入用户名和密码的对话框表示配置成功,正确的输入用户名和密码后,即可对FTP文件进行相应权限的操作。
说明:- 如果FTP服务器配置为主动模式,客户端使用此方法访问FTP站点时,需要对IE浏览器进行设置,才能打开FTP的文件夹。打开IE浏览器,选择“工具 > Internet 选项 > 高级”。勾选“启用FTP文件夹视图”,取消勾选“使用被动FTP”。
- 使用浏览器访问FTP服务器出错时,建议您清除浏览器缓存后再尝试。
这篇关于Linux云服务器搭建ftp站点的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-18git仓库有更新,jenkins 自动触发拉代码怎么配置的?-icode9专业技术文章分享
- 2024-12-18Jenkins webhook 方式怎么配置指定的分支?-icode9专业技术文章分享
- 2024-12-13Linux C++项目实战入门教程
- 2024-12-13Linux C++编程项目实战入门教程
- 2024-12-11Linux部署Scrapy教程:新手入门指南
- 2024-12-11怎么将在本地创建的 Maven 仓库迁移到 Linux 服务器上?-icode9专业技术文章分享
- 2024-12-10Linux常用命令
- 2024-12-06谁看谁服! Linux 创始人对于进程和线程的理解是…
- 2024-12-04操作系统教程:新手入门及初级技巧详解
- 2024-12-04操作系统入门:新手必学指南