Centos7 搭建FTP服务并限制IP访问

目录

1.什么是FTP服务?

2.配置FTP服务

1.配置好本地yum源后,把防火墙,selinux,iptables关闭。

2.setenforce 0使修改立即生效

3.安装vsftpd

4.Vsftpd系统用户配置

5.修改ftp默认目录

6.赋权

7.重启服务

3.开始测试

1.切换用户,创建目录测试

2.到客户端查看,这个是允许匿名登录的

3.切换用户测试

4.限制IP访问测试

1.修改白名单,重启服务

2.用另一台访问FTP服务成功


1.什么是FTP服务?

FTP服务是一种允许用户在不同计算机之间传输文件的协议,通过FTP客户端软件连接到远程服务器,用户可以浏览、下载、上传、删除文件,并支持主动和被动数据传输模式。为增加安全性,可以使用安全的FTP协议或加密技术

2.配置FTP服务

1.配置好本地yum源后,把防火墙,selinux,iptables关闭。

#关闭防火墙
systemctl stop firewalld
#关闭iptables
systemctl stop iptables
#关闭selinux
vim /etc/selinux/config
#修改配置文件为
SELINUX=disabled

2.setenforce 0使修改立即生效


3.安装vsftpd

yum install -y vsftpd
systemctl  restart   vsftpd.service
[root@localhost ~]# ps   -ef |grep  vsftpd
root       1623      1  0 08:37 ?        00:00:00 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
root       1625   1475  0 08:37 pts/0    00:00:00 grep --color=auto vsftpd

4.Vsftpd系统用户配置

[root@localhost ~]# useradd admin
[root@localhost ~]# echo admin123456 |passwd --stdin admin
更改用户 admin 的密码 。
passwd:所有的身份验证令牌已经成功更新。

5.修改ftp默认目录

vim /etc/vsftpd/vsftpd.conf
chroot_local_user=YES
local_root=/home
anon_root=/home/test
# local_root 表示本地用户登录后的根目录,也就是非匿名,而是输入用户名和密码登录进入的
#anon_root 用户,即匿名用户访问的主目录
#查看目录所属用户,并修改匿名用户访问目录为管理员admin所有

6.赋权

chown admin:admin test

7.重启服务

systemctl restart vsftpd

3.开始测试

1.切换用户,创建目录测试

[root@localhost home]# su admin
[admin@localhost home]$ cd /home
[admin@localhost home]$ ls
admin  test
[admin@localhost home]$ cd test
[admin@localhost test]$ ll
总用量 0
[admin@localhost test]$ mkdir t1
[admin@localhost test]$ ls
t1

2.到客户端查看,这个是允许匿名登录的

3.切换用户测试

[root@localhost tmp]# ftp localhost
Trying ::1...
ftp: connect to address ::1拒绝连接
Trying 127.0.0.1...
Connected to localhost (127.0.0.1).
220 (vsFTPd 3.0.2)
Name (localhost:root): admin
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd test
250 Directory successfully changed.
ftp> ls\
227 Entering Passive Mode (127,0,0,1,114,71).
150 Here comes the directory listing.
drwxrwxr-x    2 1000     1000           27 Feb 16 02:18 t1
-rwxr-xr-x    1 1000     1000            0 Feb 16 03:05 t2
226 Directory send OK.
ftp> cd t1
250 Directory successfully changed.
ftp> ls
227 Entering Passive Mode (127,0,0,1,150,70).
150 Here comes the directory listing.
-rw-r--r--    1 1000     1000            0 Feb 16 02:17 2.sh
-rwxr-xr-x    1 1000     1000            0 Feb 16 02:18 3
226 Directory send OK.
ftp> get 2.sh
local: 2.sh remote: 2.sh
227 Entering Passive Mode (127,0,0,1,193,41).
150 Opening BINARY mode data connection for 2.sh (0 bytes).
226 Transfer complete.
ftp> quit
221 Goodbye.
[root@localhost tmp]# tree
.
├── 2.sh
├── 3
├── systemd-private-63a2e45ff8ca4895b6c2df4d67d4babf-chronyd.service-gxwlob
│   └── tmp
├── systemd-private-ea4db549dbcc4db8a7e3953818058af4-chronyd.service-PrJXhl
│   └── tmp
├── t2
├── vmware-root_662-2689143848
├── vmware-root_666-2731021219
└── vmware-root_669-3980232826

7 directories, 3 files

4.限制IP访问测试

1.修改白名单,重启服务

vi /etc/hosts.allow
vsftpd:10.1.1.
vsftpd:10.1.1.0/255.255.255.0

2.用另一台访问FTP服务成功

  • 8
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: CentOS 7.9搭建FTP服务器的步骤如下: 1. 首先,确保已经安装了vsftpd软件包。可以通过以下命令来安装:`sudo yum install vsftpd`。 2. 安装完成后,启动vsftpd服务。使用以下命令启动服务:`sudo systemctl start vsftpd`。 3. 接下来,设置vsftpd服务开机自启动。使用以下命令来设置:`sudo systemctl enable vsftpd`。 4. 默认情况下,匿名用户是不允许访问FTP服务器的。如果需要允许匿名用户访问,可以编辑vsftpd的配置文件`/etc/vsftpd/vsftpd.conf`,并找到配置项`anonymous_enable`,将其设置为`YES`。 5. 配置本地用户的访问权限。在vsftpd的配置文件中,可以通过添加以下配置来设置本地用户的访问权限: ``` userlist_enable=YES userlist_file=/etc/vsftpd/user_list userlist_deny=NO ``` 然后,创建`/etc/vsftpd/user_list`文件,并在文件中添加允许访问FTP服务器的本地用户的用户名。 6. 设置FTP服务器的根目录。默认情况下,FTP用户的根目录位于`/var/ftp`目录下。如果需要修改根目录,可以编辑vsftpd的配置文件,并找到配置项`local_root`,将其设置为所需的目录。 7. 最后,重启vsftpd服务以应用配置的更改。使用以下命令来重启服务:`sudo systemctl restart vsftpd`。 完成上述步骤后,CentOS 7.9上的FTP服务器即搭建完成。您可以使用FTP客户端来连接并访问服务器,具体的连接配置取决于您使用的FTP客户端。 ### 回答2: CentOS 7.9 系统可以使用 vsftpd(Very Secure FTP Daemon)来搭建 FTP 服务器。下面是基本的步骤: 1. 使用管理员身份登录到 CentOS 7.9 服务器。 2. 打开终端,并使用以下命令安装 vsftpd: ``` sudo yum install vsftpd ``` 3. 安装完成后,使用以下命令启动 vsftpd 服务,并设置开机自启动: ``` sudo systemctl start vsftpd sudo systemctl enable vsftpd ``` 4. 接下来,需要配置 vsftpd。使用以下命令编辑配置文件: ``` sudo vi /etc/vsftpd/vsftpd.conf ``` 在文件中,你可以根据需要进行以下设置: - 禁用匿名用户:将 `anonymous_enable=YES` 修改为 `anonymous_enable=NO`。 - 启用本地用户登录:取消注释(删除行首的 `#`)`local_enable=YES`。 - 允许本地用户上传文件:取消注释(删除行首的 `#`)`write_enable=YES`。 你还可以根据需要进行其他设置,然后保存并关闭文件。 5. 在防火墙中打开 FTP 服务器的端口。默认情况下,FTP 使用的端口是 20 和 21。你可以使用以下命令做出相应修改: ``` sudo firewall-cmd --zone=public --add-service=ftp --permanent sudo firewall-cmd --reload ``` 6. 接下来,你需要允许本地用户登录 FTP 服务器并设置其访问目录权限。使用以下命令添加用户: ``` sudo useradd ftpuser ``` 使用以下命令设置用户的密码: ``` sudo passwd ftpuser ``` 使用以下命令将用户的主目录设置为 FTP 目录: ``` sudo usermod -d /var/ftp ftpuser ``` 7. 最后,重新启动 vsftpd 服务以应用配置: ``` sudo systemctl restart vsftpd ``` 现在,你的 CentOS 7.9 服务器已经成功搭建FTP 服务器。通过使用 FTP 客户端工具,你可以使用添加的用户名和密码进行连接,并访问指定的 FTP 目录。 ### 回答3: 搭建FTP服务器可以实现网络文件传输和共享,CentOS 7.9是一种常用的Linux操作系统,以下是关于如何在CentOS 7.9上搭建FTP服务器的步骤: 1. 首先,使用root权限登录到CentOS 7.9服务器。 2. 安装vsftpd软件包,vsftpd是一种常用的FTP服务器软件。在终端中使用以下命令进行安装:yum install vsftpd -y 3. 安装完毕后,启动vsftpd服务并将其设置为开机自启动:systemctl start vsftpd && systemctl enable vsftpd 4. 默认情况下,vsftpd的配置文件位于/etc/vsftpd/vsftpd.conf。使用文本编辑器(如vi或nano)打开此文件:vi /etc/vsftpd/vsftpd.conf 5. 根据需要进行配置更改。一些常见的配置选项包括:启用匿名访问(anonymous_enable=YES)、禁止匿名用户上传(write_enable=NO)、添加本地用户访问(local_enable=YES)等。根据需要调整这些选项。 6. 保存并关闭配置文件后,重新启动vsftpd服务以使更改生效:systemctl restart vsftpd 7. 防火墙可能会阻止FTP访问。如果需要,可以使用firewalld或iptables等工具配置防火墙规则,允许FTP流量通过。 8. 检查FTP服务器的工作情况。您可以通过在Web浏览器中输入“ftp://your_server_ip访问FTP服务器。使用服务器的IP地址来替换“your_server_ip”。 9. 如果需要,您可以进一步调整FTP服务器的相关配置,如限制用户的访问路径、设置访问权限和配额等。 通过以上步骤,您应该能够在CentOS 7.9上成功搭建FTP服务器。根据需要,您可以对FTP服务进行进一步的配置和定制化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值