方法/步骤
在创建FTP服务器之有先命令: ps -ef |grep vsftpd
查一下系统有没有安装vsftpd这个服务器,如果出现如下图所示的界面说明没有安装。
然后再执行:yum install vsftpd -y
进行在线安装vsftpd这个服务。
安装成功以后需要把匿名登陆的这个功能关闭了。
使用命令: vim /etc/vsftpd/vsftpdconf
然后在里成找到:
anonymous_enable=NO
然后再查看一下vsftpd这个服务有没有启动。
使用命令: chkconfig --list
如果你如下图所示一样没有启动。
没有启动使用启动:chkconfig --level 35 vsftpd on
再接下来就是创建用户名。
创建用户名:useradd jingyan
再然后就是创建密码。
命令:passwd jingyan
再输入两次密码就可以了。
最后重启一下服务:service vsftpd start
如果出现启动失败则可以使用:/etc/rcd/initd/vsftpd restart
成功链接FTP服务器上。
1 首先服务器要安装ftp软件,查看是否已经安装ftp软件下:#which vsftpd
如果看到有vsftpd的目录说明服务器已经安装了ftp软件
2 查看ftp 服务器状态
#service vsftpd status
3 启动ftp服务器
#service vsftpd start
4 重启ftp服务器
#service vsftpd restart
5 查看服务有没有启动
#netstat -an | grep 21
tcp 0 0 0000:21 0000: LISTEN
如果看到以上信息,证明ftp服务已经开启。
6如果需要开启root用户的ftp权限要修改以下两个文件
#vi /etc/vsftpdftpusers中注释掉root
#vi /etc/vsftpduser_list中也注释掉root
然后重新启动ftp服务。
7 vsftpd 500 OOPS: cannot change directory
登陆报错:
C:\>ftp 1921680101
Connected to 1921680101
220 (vsFTPd 205)
User (1921680101:(none)): frank
331 Please specify the password
Password:
500 OOPS: cannot change directory:/home/frank
Login failed
ftp> ls
500 OOPS: child died
Connection closed by remote host
解决方法:
setsebool ftpd_disable_trans 1
service vsftpd restart
就OK了!
这是SELinux的设置命令,在不熟悉SELnux前,把SELinux关掉也可以的。
8 永久开启,即os重启后自动开启ftp服务
方法一:
cd /etc/xinetdd ,编辑ftp服务的配置文件gssftp的设置:
vi /etc/xinetdd/gssftp ,将 修改两项内容:
(a) server_args = -l –a 去掉-a 改为server_args = -l
(b) disable=yes改为disable=no
(c) 保存退出。
方法二:
(a) system-config-services , 进入图形界面的System services查看是否有 vsftpd项,如果没有转到2,保存后退出
(b) 用redhat第三张盘 安装此服务(开始--删除/增加程序),200K左右
(c) #setup
此时能看到vsftpd项,此时选中此services项,保存后退出
# 匿名用户配置
anonymous_enable=YES # 是否允许匿名ftp,如否则选择NO
anon_upload_enable=YES # 匿名用户是否能上传
anon_mkdir_write_enable=YES # 匿名用户是否能创建目录
anon_other_write_enable=YES # 修改文件名和删除文件
# 本地用户配置
local_enable=YES # 是否允许本地用户登录
local_umask=022 # umask 默认755
write_enable=YES
chroot_local_user=YES # 本地用户禁锢在宿主目录中
chroot_list_enable=YES # 是否将系统用户限止在自己的home目录下
chroot_list_file=/etc/vsftpdchroot_list # 列出的是不chroot的用户的列表
chown_upload=YES # 是否改变上传文件的属主
chown_username=username # 如果是需要输入一个系统用户名
userlist_enable=YES
userlist_deny=NO
deny_email_enable=YES # 是否允许禁止匿名用户使用某些邮件地址
banned_email_file=/etc/vsftpdbanned_emails # 禁止邮件地址的文件路径
ftpd_banner=Welcome to chenlf FTP service # 定制欢迎信息
dirmessage_enable=YES # 是否显示目录说明文件, 需要收工创建message文件
message_file= # 设置访问一个目录时获得的目录信息文件的文件名,默认是message
xferlog_enable=YES # 是否记录ftp传输过程
xferlog_file=/var/log/vsftpdlog # ftp传输日志的路径和名字
xferlog_std_format=YES # 是否使用标准的ftp xferlog模式
ascii_upload_enable=YES # 是否使用ascii码方式上传文件
ascii_download_enable=YES # 是否使用ascii码方式下载文件
connect_from_port_20=YES # 是否确信端口传输来自20(ftp-data)
nopriv_user=ftpsecure # 运行vsftpd需要的非特权系统用户默认是nobody
async_abor_enable=YES # 是否允许运行特殊的ftp命令async ABOR
# FTP服务器的资源限制
idle_session_timeout=600 # 设置session超时时间
data_connection_timeout=120 # 设置数据传输超时时间
max_clients=50 # 用户最大连接数 默认是0不限止
max_per_ip=5 # 每个IP地址最大连接数
anon_max_rate=102400 # 匿名的下载速度 KB
local_max_rate=102400 # 普通用户的下载速度 KB
方法/步骤
1、用在线安装
yum install vsftpd pam db4-y
使用命令将vsftp配置为系统服务
chkconfig --level 35 vsftpd on
2、配置vsftpd服务的宿主
useradd vsftpdadmin -s /sbin/nologin -M
这个vsftpdadmin只是用来替换root的,并不需要登录
3、建立ftp虚拟宿主帐户
useradd vsftpuser -s /sbin/nologin -M
这ftpuser只个虚拟帐户的宿主,本身是不用登录的
4、配置vsftpdconf 配置之前要先备份一下原来的
vi /etc/vsftpd/vsftpdconf
anonymous_enable=YES --> anonymous_enable=NO //不允许匿名用户访问,默认是允许。
chroot_list_enable=YES --> chroot_list_enable=YES //不允许FTP用户离开自己主目录
增加
#设定虚拟用户个人Vsftp的配置文件存放路径。也就是说,这个被指定的目录里,将存放每个Vsftp虚拟用户个性的配置文件,一个需要注意的地方就是这些配置文件名必须和虚拟用户名相同。
user_config_dir=/etc/vsftpd/vconf/userlocal
#这一步非常重要,要记住这一步。一会要根据这个配置新建文件夹
#修改端口号
ftp_data_port=4040
reverse_lookup_enable=NO
pasv_enable=yes
pasv_min_port=48790
pasv_max_port=48800
listen_port=48796 #端口可以根据你自己实际情况配置,也可以用默认端口。但是为了安全考虑根据自己实际情况配置
5、建立虚拟用户文件
mkdir /etc/vsftpd/vconf
touch /etc/vsftpd/vonf/vir_user
6、建立虚拟用户
vi /etc/vsftpd/vonf/vir_user
virtualuser //用户名
12345678 //密码
7、生成数据库
db_load -T -t hash -f /etc/vsftpd/vconf/vir_user /etc/vsftpd/vconf/vir_userdb
8、设置数据库文件访问权限
chmod 600 /etc/vsftpd/vconf/vir_user
chmod 600 /etc/vsftpd/vconf/vir_userdb
9、修改/etc/pamd/vsftpd
auth sufficient pam_userdbso db=/etc/vsftpd/vconf/vir_user
account sufficient pam_userdbso db=/etc/vsftpd/vconf/vir_user
(要想同时使用系统用户和虚拟用户,就需要把required改成sufficient)
10
根据第四步配置的user_config_dir=/etc/vsftpd/vconf/userlocal
新建userlocal文件夹
mkdir /etc/vsftpd/vconf/userlocal
11、根据第六步建立的用户名建立一个文件
例如第六步建立的帐号是virtualuser,则新建一个virtualuser文件
touch /etc/vsftpd/conf/userlocal/virtualuser
12、编辑该用户访问的文件路径
vi /etc/vsftpd/conf/userlocal/virtualuser
输入如下
local_root= //需要指定的网站根目录,例如>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)