(八)linux搭建ftp服务器,vsftpd配置,服务自启动

linux内置了一个ftp文件上传服务 vsftpd

首先,需要对光驱进行挂载,否则查找不到这个服务的安装包

 

1.挂载光驱

cd /mnt    进入mnt目录

mkdir cdr   创建挂载点

mount /mnt/cdr /dev/cdrom  挂载cdrom到cdr目录上

 

2.查找vsftpd安装包

find /mnt/cdr -name *vsftpd*  查找vsftpd安装包

[查询结果:/mnt/cdr/Server/vsftpd-2.0.5-12.e15.x86_64.rpm]

 

3.安装并启动服务

cd /mnt/cdr/Sever  进入linux安装文件的Server目录

rpm -ivh vsftpd-2.0.5-12.e15.x86_64.rpm  安装vsftpd服务

rpm -e vsftpd  卸载vsftpd服务

service vsftpd start  启动vsftpd服务

(开启vsftpd服务之后就能下载pub目录下的内容了,但还不能上传)

service vsftpd stop  停止vsftpd服务

 

4.linux默认对外提供下载的目录(下载:linux--->本地)

/var/ftp/pub  该目录下的内容可供外界下载(能否访问pub目录取决于vsftpd服务是否开启)

window环境下,在浏览器/资源管理器地址栏中输入ftp://192.168.136.128即可打开pub文件夹

【是否可将web服务的日志记录使用硬链接方式创建一个链接到/var/ftp/pub目录中!?】

 

防火墙开启与关闭

 即时生效,重启后失效

 service iptables stop  关闭linux防火墙(关闭防火墙会有什么后果呢)

 service iptables start  开启linux防火墙

重启后永久生效

chkconfig iptables on

chkconfig iptables off

 

5.上传文件到linux(上传:本地--->linux)

上传工具有很多,此处演示cmd命令行方式上传

首先需要设置linux的ftp服务,才能在cmd命令行中使用ftp进行登陆

查看当前ftp服务的状态(root权限用户)

sestatus -b | grep ftp

如果tftpd_disable_transftp_home_dir off,则需要打开

setsebool -P tftpd_disable_trans on
setsebool -P ftp_home_dir on


 

 

开始上传文件(如,上传jdk到linux系统)

 
 这样,文件就上传到linux服务器上了。

文件被上传到(ftp登陆用户)宿主目录下:

/home/hqh/jdk-6u3-linux-i586-rpm.bin

 

6.vsftpd服务的相关配置

1个主配置文件vsftpd.conf,2个附加配置ftpusers,user_list


 
vsftpd.conf:配置主要属性

 ftpusers:配置禁用ftp的账户,登陆都不可以(密码输入提示都没有)!

 user_list:

userlist_deny=YES(默认),禁止配置用户使用ftp上传服务

userlist_deny=NO,允许配置用户使用ftp上传服务

 

查看/etc/vsftpd/vsftpd.conf配置文件

more /etc/vsftpd/vsftpd.conf(主配置文件)



  【匿名用户虽然可以登录ftp,但是受权限控制,无法上传文件】


 

配置上传权限

vi /etc/vsftpd/ftpusers(配置禁止使用ftp服务的用户)
图中所列用户将不是使用ftp进行登陆,密码输入提示都没有!

 

查看vsftpd.conf中关于userlist_deny的配置

tail -4 /etc/vsftpd/vsftpd.conf

这里只能找到userlist_enable属性配置!!!

userlist_deny到底在哪儿???是否为手动添加该配置项???空了再验证!!!

 

 vi /etc/vsftpd/user_list

(将根据userlist_deny的值决定本配置文件中的用户对于ftp服务是可用或禁止)


 

 7.自启动(让服务器自动启动某些服务)

第1种方式(chkconfig):

chkconfig

 chkconfig --list 查看所有服务状态


 

 

 
chkconfig vsftpd --list

 
可见vsftpd服务其0至6的启动都是关闭的

 chkconfig --level 3 vsftpd on(每次重启后系统会自动开启该级别的服务)


 

第2种方式(rc.local): 

 在/etc/rc.local中加入 /usr/local/bin/vsftpd & ,让系统启动便开启配置的服务!

 vi /etc/rc.local

 a
 加入vsftpd服务-->  /usr/local/bin/vsftpd &

 esc

 :x

 

 

 

猜你喜欢

转载自schy-hqh.iteye.com/blog/1927285