CentOS7部署FTP服务器

  1. 首先准备一台centos7虚拟机,作为服务器IP地址必须是固定的。
bash 复制代码
vim /etc/sysconfig/network-scripts/ifcfg-ens33

配置内容如下:

bash 复制代码
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="6e4ae749-6c47-4cd8-b494-fd80eb40490b"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.1.56
NETMASK=255.255.255.0
GATEWAY=192.168.1.2
DNS1=8.8.8.8
DNS2=114.114.114.114
  1. 配置CentOS7的主机名
bash 复制代码
vim /etc/hostname

自定义一个主机名,最好是三段式,例如:

bash 复制代码
ly.tantanly.org

将主机名信息添加到hosts文件中

bash 复制代码
vim /etc/hosts

内容如下:

重启网络服务:

bash 复制代码
systemctl restart network

检验一下主机名是否已修改:

bash 复制代码
hostname
  1. 准备一个本地的分享数据源(这里采用rpm数据作为分享源文件)

先卸载软件光盘,防止其自动挂载

bash 复制代码
umount /dev/cdrom

重新创建一个挂载目录

bash 复制代码
mkdir /media/cdrom

将光盘挂载到新建的目录上

bash 复制代码
mount /dev/cdrom /media/cdrom
  1. 安装FTP服务
bash 复制代码
[root@localhost ~]# cd /media/cdrom/Packages/
[root@localhost Packages]# rpm -Uvh vsftpd-3.0.2-28.el7.x86_64.rpm 

将packages包的内容拷贝到FTP服务器站点,并启动vsftpd服务

bash 复制代码
[root@localhost Packages]# cd /var/ftp/
[root@localhost ftp]# ls
pub
[root@localhost ftp]# mkdir yum
[root@localhost ftp]# cd yum
[root@localhost yum]# cp -rf /media/cdrom/* ./

启动vsftpd服务,并将服务添加到开机自启动中

bash 复制代码
systemctl start vsftpd
systemctl enable vsftpd

查看vsftpd服务是否启动

bash 复制代码
netstat -atpn | grep 21
  1. 配置vsfpd安全

a.在防火墙上允许ftp服务

b.添加允许TCP端口3001-3100

修改配置文件:/etc/vsftpd/vsftpd.conf,启动被动模式

bash 复制代码
vim /etc/vsftpd/vsftpd.conf

添加一下内容:

bash 复制代码
pasv_enable=YES
pasv_min_port=3001
pasv_max_port=3100

设置SELinux规则:

bash 复制代码
setsebool allow_ftpd_full_access 1
setsebool httpd_enable_ftp_server 1

重启vsftpd服务

bash 复制代码
systemctl restart vsftpd

防火墙配置

勾选ftp服务

端口添加:3001-3100

  1. 测试,找一台与ftp服务器在同一网段下的主机,没有也可以用物理机修改网卡属性,使其与ftp服务器在同一网段下。

配置好之后,直接在文件夹目录栏中输入:ftp://192.168.1.56,将能访问ftp服务器站点内的数据了。

相关推荐
NamoAmitabha1286 小时前
libpng12-0 1.2.54-1ubuntu1.1 (amd64 binary) in ubuntu xenial
linux·ubuntu20.4
Madison-No76 小时前
搭建项目测试环境
linux·运维·服务器·python
吴声子夜歌7 小时前
Shell编程实例——编写安全的shell脚本(二)
linux·运维·shell
悠悠121388 小时前
微服务通信别只看性能:REST 与 gRPC 的 6 个选型判断和一次 502 故障复盘
运维·服务器
xiaoye-duck9 小时前
《Linux 网络编程》深入理解 IP 协议(二):网段划分、私有 IP 与 NAT 地址转换
linux·网络·ip
云老大-阿里云国际站代理商9 小时前
华为云国际站服务代理商:NAT网关怎么配?多台ECS共用公网IP要注意什么
服务器·华为云·云计算
zx_741484819 小时前
【Linux入门】Shell 函数、正则表达式与文本处理:cut 与 awk
linux·运维·正则表达式
Zenova EdgeOS10 小时前
Linux dmesg 工业边缘实战:内核日志过滤、持久化与故障定位
linux·运维·边缘计算·工业边缘·dmesg·内核日志
金士顿10 小时前
System.Text.Json Source Generator 深度解析:为什么 Native AOT 不喜欢反射
linux·asp.net core·arm64·net·native aot
wdfk_prog11 小时前
ROS教程08:从 TransportTCP::connect() 追到 TCPROS Connection Header、序列化与 Socket 数据传输
运维·缓存·docker·容器·ros