在虚拟机上的Linux系统配置FTP服务,跟Windows建立连接传输文件的具体 *** 作步骤如下:
1、在电脑上下载并安装好小型FTP服务器(QuickEasyFTPServer)软件,打开进行设置用户名,用于远程登录。
2、设置密码,再输一次确认密码。
3、设置想共享的文件夹。
4、设置各项权限,包括下载上传权限、下载上传速度限制等。
5、全部设置完毕后,点击“完成”。
6、完成之后,可以在软件里进行各项服务器配置,并且点左上角绿色按钮可以启动服务器,启动后,绿色按钮变暗,红色按钮变亮。
新在虚拟机下安装了linux。现在我想启动linux自带的ftp服务器:#service vsftpd start 。如果想linux启动是自动启动ftp服务器:#chkconfig vsftpd on 。运行putty,以root身份进入,出现了报错 530 Permission denied ,感觉很奇怪,因以普通用户是可以进入的。
原因是我们 /etc/vsftpd/ftpusers 和 /etc/vsftpd/user_list 禁掉了root这个用户。这时我们需要修改这两个文件。
(1)/etc/vsftpduser_list的默认文件(则是表示具体用户)
# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password
# Note that the default vsftpd pam config also checks /etc/vsftpdftpusers
# for users that are denied
root
bin
daemon
adm
lp
sync
shutdown
halt
news
uucp
operator
games
nobody
这时我们要在 root 前加上 # 。
(2)/etc/vsftpdftpusers 的默认文件(所有可以登录该FTP的用户属性)
# Users that are not allowed to login via ftp
root
bin
daemon
adm
lp
sync
shutdown
halt
news
uucp
operator
games
nobody
这时我们要在 root 前加上 #
拟机装好RedHat后,准备使用filezilla连接,输入IP地址,root用户,密码,快速连接,报错:
530 Permission denied。
故障排除:
1首先检查系统是否开启了vsftp服务,如果没有开启,先开启该服务。
方法1setup--系统服务--自启动服务
方法2界面设置,service vsftpd restart
2查看配置
vsftpd的配置,配置文件中限定了vsftpd用户连接控制配置。
vsftpdftpusers:位于/etc目录下。它指定了哪些用户账户不能访问FTP服务器,例如root等。
vsftpduser_list:位于/etc目录下。该文件里的用户账户在默认情况下也不能访问FTP服务器,仅当vsftpd conf配置文件里启用userlist_enable=NO选项时才允许访问。
vsftpdconf:位于/etc/vsftpd目录下。来自定义用户登录控制、用户权限控制、超时设置、服务器功能选项、服务器性能选项、服务器响应消息等FTP服务器的配置。
3配置修改完成后,执行service vsftpd restart重启vsftpd服务。详解Linux中搭建一个ftp服务器。
ftp工作是会启动两个通道:
控制通道 , 数据通道
在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种模式:port模式(主动模式)和pasv(被动模式)
PORT模式:
在客户端需要接收数据时,ftp_client(大于1024的随机端口)-PORT命令->ftp_server(21) 发送PORT命令,这个PORT命令包含了客户端是用什么端口来接收数据(大于1024的随机端口),在传送数据时,ftp_server将通过自己的TCP 20 端口和PORT中包含的端口建立新的连接来传送数据。
PASV模式:
传送数据时,ftp_client--PASV命令-->ftp_server(21) 发送PASV命令时,ftp_server自动打开一个1024--5000之间的随机端口并且通知ftp_client在这个端口上传送数据,然后客户端向指定的端口发出请求连接,建立一条数据链路进行数据传输。
安装ftp
#rpm -qa vsftpd 查看是否已经安装
#yum install -y vsftpd
#rpm -ql vsftpd
/etc/logrotated/vsftpd vsftpd的日志文件
/etc/pamd/vsftpd PAM认证文件
/etc/rcd/initd/vsftpd 启动脚本
/etc/vsftpd vsftpd的配置文件存放的目录
/etc/vsftpd/ftpusers 禁止使用vsftpd的用户列表文件
/etc/vsftpd/user_list 禁止或允许使用vsftpd的用户列表文件
/etc/vsftpd/vsftpdconf 主配置文件
/etc/vsftpd/vsftpd_conf_migratesh vsftpd *** 作的一些变量和设置
/usr/sbin/vsftpd vsftpd的主程序
其他一些说明文档和手册文件略!
/var/ftp 用户主目录
/var/ftp/pub 用户的目录
#service vsftpd start
#chkconfig --level vsftpd
#chkconfig --level 2345 vsftpd on
2 用户的登录名:ftp(anonymous) 密码空 ,登录的目录为/var/ftp
用用户登录的时候默认是只有的权限,没有上传,创建和删除的权限:
#vim /etc/vsftpd/vsftpdconf
anon_upload_enable=YES 上传
anon_mkdir_write_enable=YES 创建
anon_other_write_enable=YES 删除
#service vsftpd restart
为了安全应该禁止用户的登录:
#vim /etc/vsftpd/vsftpdconf
anonymous_enable=NO
#anon_upload_enable=YES 上传
#anon_mkdir_write_enable=YES 创建
#anon_other_write_enable=YES 删除
#service vsftpd restart
3 创建一个直接登录系统用户来登录ftp:
#useradd -s /sbin/nologin viong
#passwd viong在linux中一般使用vsftp这个软件搭建FTP服务器。
首先要看你的是什么linux系统,对于ubuntu、debian可通过apt-get install vsftpd命令安装,对于centos、redhat等系统可通过yum install vsftpd命令安装。
安装成功后,需要修改/etc/vsftpdconf配置文件。这个配置文件包含登录ftp的用户、密码、访问目录的设置。
修改了配置文件后,执行/etc/initd/vsftpd restart命令重启ftp服务器。那么ftp服务器就搭建完成了。1运行以下命令安装 vsftpd。
yum install -y vsftpd
2运行以下命令打开及查看etc/vsftpd
cd /etc/vsftpd
ls
说明:
/etc/vsftpd/vsftpdconf 是核心配置文件。
/etc/vsftpd/ftpusers 是黑名单文件,此文件里的用户不允许访问 FTP 服务器。
/etc/vsftpd/user_list 是白名单文件,是允许访问 FTP 服务器的用户列表。
/etc/vsftpd/vsftpd_conf_migratesh 是vsftpd *** 作的一些变量和设置
备注:使用命令 rpm -ql vsftpd 可列出vsftpd中包含的文件
3运行以下命令设置开机自启动。
systemctl enable vsftpd
4运行以下命令启动 FTP 服务。
systemctl start vsftpd
5运行以下命令查看 FTP 服务端口。
netstat -antup | grep ftp
6配置本地用户登录
本地用户登录就是指用户使用 Linux *** 作系统中的用户账号和密码登录 FTP 服务器。
vsftpd 安装后默只支持匿名 FTP 登录,用户如果试图使用 Linux *** 作系统中的账号登录服务器,将会被 vsftpd 拒绝,但可以在 vsftpd 里配置用户账号和密码登录。具体步骤如下:
a运行以下命令创建 ftptest 用户。
useradd ftptest
(删除用户命令:sudo userdel -r newuser)
b运行以下命令修改 ftptest 用户密码。
passwd ftptest
7修改/etc/vsftpd/vsftpdconf
a运行vim /etc/vsftpd/vsftpdconf。
b按键 “i” 进入编辑模式。
c将是否允许匿名登录 FTP 的参数修改为anonymous enable=NO。
d将是否允许本地用户登录 FTP 的参数修改为local_enable=YES。
e按键 “Esc” 退出编辑模式,然后按键“:wq” 保存并退出文件。
f运行命令 cat /etc/vsftpd/vsftpdconf 查看配置文件内容。 命令的使用方法可查询“Linux命令大全”。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)