linux下搭建FTP服务器

简介:

1.安装vsftpd软件包

[root@ser5 pub]# yum -y install vsftpd

2.设置服务器的IP地址192.168.4.5

3.在/var/ftp/目录下建立测试文件 anon.txt

[root@ser5 /]# ifconfig > /var/ftp/anon.txt

4.在用户lisi的宿主目录下建立测试文件lisi.txt

[root@ser5 /]# useradd lisi

[root@ser5 /]# passwd lisi

更改用户 lisi 的密码 。

新的 密码:

无效的密码: WAY 过短

无效的密码: 过于简单

重新输入新的 密码:

passwd: 所有的身份验证令牌已经成功更新。

[root@ser5 /]# touch /home/lisi/lisi.txt

[root@ser5 /]# service vsftpd start

为 vsftpd 启动 vsftpd:                                    [确定]

5.客户机验证

Win7客户机上:

1)匿名访问 FTP服务器,测试下载、上传

ftp://192.168.4.5/

2)以用户 lisi 登录 FTP服务器,测试下载、上传

Linux客户机上:

1)使用ftp命令访问FTP服务器,测试匿名访问、用户登录

[root@pc205 /]# ftp 192.168.4.5

Connected to 192.168.4.5 (192.168.4.5).

220 (vsFTPd 2.2.2)

Name (192.168.4.5:root): ftp

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> ls

227 Entering Passive Mode (192,168,4,5,26,186).

150 Here comes the directory listing.

-rw-r--r--    1 0        0             900 Aug 13 12:03 anon.txt

drwxr-xr-x    2 14       0            4096 Aug 13 09:30 pub

226 Directory send OK.

ftp> pwd

257 "/"

ftp> bye

221 Goodbye.

2)以用户lisi登录FTP服务器,下载/etc/inittab文件、上传install.log

[root@pc205 ~]# ftp 192.168.4.5

Connected to 192.168.4.5 (192.168.4.5).

220 (vsFTPd 2.2.2)

Name (192.168.4.5:root): lisi

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> cd /etc/

250 Directory successfully changed.

ftp> get inittab

local: inittab remote: inittab

227 Entering Passive Mode (192,168,4,5,86,88).

150 Opening BINARY mode data connection for inittab (884 bytes).

226 Transfer complete.

884 bytes received in 3.7e-05 secs (23891.89 Kbytes/sec)

ftp> cd /var/ftp

250 Directory successfully changed.

ftp> put install.log

local: install.log remote: install.log

227 Entering Passive Mode (192,168,4,5,95,194).

553 Could not create file.

ftp> bye

221 Goodbye.

3)断开ftp连接,查看下载的文件

[root@pc205 ~]# ls

anaconda-ks.cfg  install.log.syslog                公共的  图片  音乐

inittab          VMwareTools-9.6.0-1294478.tar.gz  模板    文档  桌面

install.log      vmware-tools-distrib              视频    下载

6.在服务器端修改配置文件

[root@ser5 /]# vim /etc/vsftpd/vsftpd.conf

添加以下内容

anonymous_enable=YES //(默认)允许匿名登录

anon_upload_enable=YES //允许匿名上传文件

anon_mkdir_write_enable=YES //允许匿名创建目录

anon_other_write_enable=YES //允许其他写入权限

write_enable=YES         //(默认)允许写入(全局)

anon_umask=022 //设置上传文件权限掩码

[root@svr5 ~]# chown ftp /var/ftp/pub/

[root@ser5 /]# service vsftpd reload

注:不能修改/var/ftp/的目录属主为ftp因为linux的安全机制,如果这么设置,那么匿名用户将不能访问,如果想让匿名用户有修改,写入的权限只能在其子目录下设置属主为ftp

7.禁锢本地用户 --> 宿主目录

修改配置文件,添加以下内容

chroot_local_user=YES

8.设置访问ftp服务器的黑白名单

黑名单文件:/etc/vsftpd/ftpusers

黑/白名单:/etc/vsftpd/user_list


1)将user_list作为黑名单(缺省)

userlist_enable=YES //(默认)启用user_list列表文件

userlist_deny=YES //(默认)


2)改将user_list作为白名单

userlist_enable=YES //(默认)启用user_list列表文件

userlist_deny=NO //将user_list作为白名单










本文转自 无心低语 51CTO博客,原文链接:http://blog.51cto.com/fengzhankui/1540194,如需转载请自行联系原作者
目录
相关文章
|
9天前
|
Java Linux
Springboot 解决linux服务器下获取不到项目Resources下资源
Springboot 解决linux服务器下获取不到项目Resources下资源
|
12天前
|
Linux
linux下搭建tftp服务器教程
在Linux中搭建TFTP服务器,需安装`tftp-server`(如`tftpd-hpa`)。步骤包括:更新软件包列表,安装`tftpd-hpa`,启动并设置开机自启,配置服务器(编辑`/etc/default/tftpd-hpa`),添加选项,然后重启服务。完成后,可用`tftp`命令进行文件传输。例如,从IP`192.168.1.100`下载`file.txt`: ``` tftp 192.168.1.100 <<EOF binary put file.txt quit EOF ```
27 4
|
27天前
|
存储 安全 Shell
⭐⭐【Shell 命令集合 文件传输 】Linux ftp工具 使用指南
⭐⭐【Shell 命令集合 文件传输 】Linux ftp工具 使用指南
40 0
|
27天前
|
存储 Shell Linux
【Shell 命令集合 文件传输 FTP客户端工具】Linux ncftp 命令使用指南
【Shell 命令集合 文件传输 FTP客户端工具】Linux ncftp 命令使用指南
35 0
|
27天前
|
Linux Shell 网络安全
【Shell 命令集合 网络通讯 】Linux 与SMB服务器进行交互 smbclient命令 使用指南
【Shell 命令集合 网络通讯 】Linux 与SMB服务器进行交互 smbclient命令 使用指南
40 1
|
5天前
|
Linux 数据安全/隐私保护
Linux基础与服务器架构综合小实践
【4月更文挑战第9天】Linux基础与服务器架构综合小实践
980 6
|
17天前
|
Ubuntu Linux 虚拟化
【Linux】ubuntu安装samba服务器
【Linux】ubuntu安装samba服务器
|
17天前
|
Linux
Linux安装bind9搭建自己的域名服务器
Linux安装bind9搭建自己的域名服务器
11 0
|
20天前
|
网络协议 Linux 网络安全
Linux服务器DNS服务器配置实现bind的正向解释和反向解释
Linux服务器DNS服务器配置实现bind的正向解释和反向解释
17 0
|
27天前
|
网络协议 安全 Shell
【Shell 命令集合 系统设置 】Linux 从远程时间服务器获取当前日期和时间 rdate命令 使用指南
【Shell 命令集合 系统设置 】Linux 从远程时间服务器获取当前日期和时间 rdate命令 使用指南
31 0