CentOS6安装vsftpd
练习:完成vsftpd配置
(1) 禁锢系统用户于家目录
[root@node3 ~]# yum -y install vsftpd
[root@node3 ~]# vim /etc/vsftpd/vsftpd.conf
chroot_local_user=YES //大概在102行,启用此处的配置语句 [root@node2 ~]# ftp 10.1.43.103
Connected to 10.1.43.103 (10.1.43.103).
220 (vsFTPd 3.0.2)
Name (10.1.43.103:root): gao
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 (10,1,43,103,28,138).
150 Here comes the directory listing.
drwxr-xr-x 2 0 0 6 Oct 13 09:47 pub
drwxrwxrwx 3 0 0 4096 Oct 15 12:50 upload
226 Directory send OK.
ftp> pwd
257 "/" #禁锢成功
(2) 基于mysql进行用户认证
安装pam_mysql模块:
CentOS6
[root@node3 ~]# yum -y install pam_mysql <CentOS 6上>
CentOS7
[root@node3 ~]# yum -y install mariadb-devel pam-devel
[root@node3 ~]# wget 10.1.0.1:/pub/Sources/sources/pam/pam_mysql-0.7RC1.tar.gz
[root@node3 ~]# tar -xf pam_mysql-0.7RC1.tar.gz
[root@node3 ~]# cd pam_mysql-0.7RC1
[root@node3 pam_mysql-0.7RC1]# ./configure --with-pam=/usr --with-mysql=/usr --with-pam-mods-dir=/usr/lib64/security
[root@node3 pam_mysql-0.7RC1]# make
[root@node3 pam_mysql-0.7RC1]# make install
修改vsftpd的配置文件:
[root@node3 ~]# vim /etc/vsftpd/vsftpd.conf
guest_enable=YES //在末尾写上此3行,并把末尾向上5-6的位置中的 pam_service_name 这行注释掉
guest_username=vuser pam_service_name=vsftpd.mysql
建立数据库:
[root@node3 ~]# mysql
mysql> CREATE DATABASE vsftpd;
mysql> CREATE TABLE vsftpd.users (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, name CHAR(30) NOT NULL UNIQUE KEY,password CHAR(48));
mysql> INSERT INTO vsftpd.users (name,password) VALUES ('tom',PASSWORD('mageedu')),('jerry',PASSWORD('mageedu')); mysql> GRANT ALL ON vsftpd.* TO 'vsftpd'@'localhost' IDENTIFIED BY 'mageedu';
mysql> GRANT ALL ON vsftpd.* TO 'vsftpd'@'127.0.0.1' IDENTIFIED BY 'mageedu';
mysql> FLUSH PRIVILEGES;
vsftpd通过pam_mysql进行认证的配置文件:
[root@node3 ~]# vim /etc/pam.d/vsftpd.mysql
auth required /usr/lib64/security/pam_mysql.so user=vsftpd passwd=mageedu host=127.0.0.1 db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2
account required /usr/lib64/security/pam_mysql.so user=vsftpd passwd=mageedu host=127.0.0.1 db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2
准备匿名用户映射的系统用户账号:
[root@node3 ~]# mkdir /ftproot
[root@node3 ~]# useradd -d /ftproot vuser
[root@node3 ~]# mkdir /ftproot/{pub,upload}
[root@node3 ~]# setfacl -m u:vuser:rwx /ftproot/upload
登录用户:
[root@node2 ~]# ftp 10.1.43.103
Connected to 10.1.43.103 (10.1.43.103).
220 (vsFTPd 3.0.2)
Name (10.1.43.103:root): tom
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 (10,1,43,103,215,37).
150 Here comes the directory listing.
drwxr-xr-x 2 0 0 6 Oct 13 09:47 pub
drwxrwxrwx 3 0 0 4096 Oct 15 12:50 upload
226 Directory send OK.
(3) 不同的虚拟用户拥有不同的权限设定
在配置(2)的基础上,配置每匿名用户有单独的权限设定
[root@node3 ~]# vim /etc/vsftpd/vsftpd.conf
user_config_dir=/etc/vsftpd/vusers_conf #在末尾追加此语句
创建目录:
[root@node3 ~]# mkdir /etc/vsftpd/vusers_conf
为每用户提供配置文件:
[root@node3 ~]# /etc/vsftpd/vusers_conf/{tom,jerry}
配置权限的指令:
[root@node3 ~]# vim /etc/vsftpd/vusers_conf/tom
anon_upload_enable=YES|NO #注意不给指令:默认为NO
anon_mkdir_write_enable=YES|NO
anon_other_write_enable=YES|NO
[root@node3 ~]# vim /etc/vsftpd/vusers_conf/jerry
anon_upload_enable=YES|NO
anon_mkdir_write_enable=YES|NO
anon_other_write_enable=YES|NO
CentOS6安装vsftpd的更多相关文章
- centos6 安装vsftpd
centos6 安装vsftpd vsftpd一般选择yum安装,以下是安装和配置过程 如果是centos6想要安装的话一般是编译安装 1.安装 yum安装 yum install vsftpd 编译 ...
- CentOS7 安装 vsftpd 服务
CentOS7 安装 vsftpd 服务 0.FTP简介 FTP服务是一个跨平台的文件共享解决方案 0.1.FTP两种模式的区分:服务端的主被动模式 1)ftp一般分为两种模式,PORTFTP和PAS ...
- CentOS6.X安装vsftpd服务
#-----------------CentOS6.X安装VSFTPD服务 #! /bin/sh #1.关闭selinux setenforce 0 sed -i 's/enforcing/disab ...
- Centos6.9安装vsftpd并配置多用户的方法
本文介绍了Centos6.9安装vsftpd并配置多用户的方法,分享给大家,具体如下: 一.安装vsftpd ? 1 2 3 4 5 6 7 8 #安装vsftpd yum -y install vs ...
- CentOS6.5 vsftpd 配置
CentOS6.5vsftpd 配置文件为/etc/vsftpd/vsftpd.conf 安装完软件后:1.默认匿名用户能够登陆,且限制在/pub目录内,2.本地用户可以登陆但因SElinux而无法登 ...
- Centos7安装vsftpd (FTP服务器)
Centos7安装vsftpd (FTP服务器) 原文链接:https://www.jianshu.com/p/9abad055fff6 TyiMan 关注 2016.02.06 21:19* 字数 ...
- CentOS下安装vsftpd
因为FTP的端口是 两个,一个是固定21端口,还有一个任意端口的数据通道.关键是任意端口不好搞. 首先在vsftpd的配置文件中设置 任意端口的范围 [root@localhost root]# vi ...
- linux上安装vsftpd
介绍:在前几篇博客中博主介绍了,怎么用java语言搭建一个简单的网站.如果有些小伙伴想把自己做的网站发布到服务器上让别人访问的话,不妨可以关注博主的博客,博客会在接下来的几篇博客中介绍怎么把一个网站发 ...
- 通过yum来安装vsftpd
Linux系统:centos6.6. 安装步骤 1.通过yum来安装vsftpd [root@localhost ~]# yum -y install vsftpd 2.设置为开机启动 [root ...
随机推荐
- 基于主从复制的Mysql双机热备+amoeba实现读写分离、均衡负载
读写分离指的是客户只能在主服务器上写,只能在从服务器上读,当然了,这也是要看配置,你可以在主服务器配置读的功能,但是在从服务器上只能读不能写,因为从服务器是基于binlog对主服务器的复制,如果在从服 ...
- HUE中Oozie执行Hive脚本
Oozie执行hive,传入参数1. 新建一个workflow 2. 拖入一个hive2 3. hive脚本如下 CREATE TABLE IF NOT EXISTS spider_tmp.org_i ...
- jQ&js给label
<strong>当前角色:</strong><label id="lblRoleName" style="margin-bottom: 0p ...
- hdu 5777 domino 贪心
domino Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Problem ...
- Memcached replace 命令
Memcached replace 命令用于替换已存在的 key(键) 的 value(数据值). 如果 key 不存在,则替换失败,并且您将获得响应 NOT_STORED. 语法: replace ...
- php超级全局变量和魔术变量
php超级全局变量和魔术变量 一.总结 一句话总结: 1.两者的书写形式非常不一样,超级全局变量是$_大写变量名 的形式,魔术变量是 __大写变量名的形式__ 2.两者的应用范围不一样,超级全局变量是 ...
- js进阶---12-12、jquery事件委托怎么使用
js进阶---12-12.jquery事件委托怎么使用 一.总结 一句话总结:通过on方法(事件委托),给要绑定事件的元素的祖先绑定事件,从而达到效果. 1.事件委托是什么? 通过事件冒泡,让子元素绑 ...
- python运行httpserver
$ python -m SimpleHTTPServer $ python3 -m http.server
- javascript: what can javascript do?
1.Javascript can change html content <!DOCTYPE html> <html> <body> <h2>What ...
- PostgreSQL 全文检索
PostgreSQL 8.3.1 全文检索(转) 在postgreSQL 8.3自带支持全文检索功能,在之前的版本中需要安装配置tsearch2才能使用,安转配置tsearch2就不再多说了,主要介 ...