centos7架设vsftpd服务
网络控制相关命令:
systemctl status network 网络状态
systemctl restart network 网络重启
查看网络状态: nmcli connection show -a
配置网卡信息: vi /etc/sysconfig/network-scripts/eno….
重启网卡: systemctl restart network
——————————————————————————
防火墙设置相关命令:
firewall-cmd --zone=public --add-port=80/tcp –permanent
firewall-cmd --reload #重启firewall
firewall-cmd --list-ports #列出开放的端口
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
网卡配置信息:
cd /etc/sysconfig/network-scripts/
vi ifcfg-eno16777736
-----------固定IP网卡配置—开始-----------
TYPE=Ethernet
BOOTPROTO=none
NM_CONTROLLERED=yes
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=eno16777736
UUID=9451adc6-6f7d-410a-be1c-eca7fb61f1ef
DEVICE=eno16777736
ONBOOT=yes
IPADDR=192.168.1.30
PREFIX=24
GATEWAY=192.168.1.1
DNS1=192.168.1.1
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
-----------固定IP网卡配置—结束-----------
VSFTPD按照与配置
安装软件及服务:
yum install vsftpd*
yum install pam*
yum install db4*
创建vsftpd进程所需要的用户,包括宿主用户和虚拟宿主用户
useradd vsftpd -s /sbin/nologin
useradd overlord -s /sbin/nologin
其他用户相关命令
userdel –r [用户名]
id [用户名]
su [用户名]
cat /etc/passwd
配置Vsftpd的配置文件
注意两坑:
1、 如果没有IPV6的网络,主要要将IPV6的配置注释掉
2、 allow_writeable_chroot=YES #解决父目录不能写的报错
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
allow_ftpd_full_access
anon_upload_enable=NO
anon_mkdir_write_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=NO
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
nopriv_user=vsftpd
async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to Vsftp FTP service.^_^
chroot_local_user=YES
chroot_list_enable=NO
ls_recurse_enable=NO
listen=YES
#listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
guest_username=virtftpuser
guest_enable=YES
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vconf/
allow_writeable_chroot=YES
其他(没有试验):
如果允许被动模式的话:
防火墙中还需要添加:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 9010:9020 -j ACCEPT
vsftpd.conf中需要添加
pasv_enable=yes
pasv_min_port=9010
pasv_max_port=9020
listen_port=21
制作虚拟用户数据库文件
touch /etc/vsftpd/virtusers
vi /etc/vsftpd/virtusers
----------------------------
kanecruise
123456
near
123456near
mello
123456mello
----------------------------
编辑这个虚拟用户名单文件,在其中加入用户的用户名和口令信息。格式很简单:“一行用户名,一行口令”。
生成虚拟用户数据文件:
db_load -T -t hash -f /etc/vsftpd/virtusers
/etc/vsftpd/virtusers.db
察看生成的虚拟用户数据文件
ll /etc/vsftpd/virtusers.db
设定PAM验证文件,并指定虚拟用户数据库文件进行读取
在编辑前做好备份:
cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.backup
编辑Vsftpd的PAM验证配置文件
vi /etc/pam.d/vsftpd
-------------------------------------------------------------------------------
#%PAM-1.0
auth sufficient /lib64/security/pam_userdb.so
db=/etc/vsftpd/virtusers
account sufficient /lib64/security/pam_userdb.so
db=/etc/vsftpd/virtusers
session
optional pam_keyinit.so force revoke
auth
required pam_listfile.so
item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
auth
required pam_shells.so
auth include password-auth
account include password-auth
session
required pam_loginuid.so
session include password-auth
-------------------------------------------------------------------------------
虚拟用户的配置
1.规划好虚拟用户的主路径:
[root@KcentOS5 ~]# mkdir /opt/vsftp/
2.建立测试用户的FTP用户目录:
[root@KcentOS5 ~]# mkdir /opt/vsftp/ huangju / /opt/vsftp/ryan/
3.建立虚拟用户配置文件模版:
cp
/etc/vsftpd/vsftpd.conf.backup /etc/vsftpd/vconf/vconf.tmp
4.定制虚拟用户模版配置文件:
vi /etc/vsftpd/vconf/vconf.tmp
————————————————————————————————anonymous_enable=NO
local_root=/opt/vsftp/huangju
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
max_per_ip=5
local_max_rate=50000
————————————————————————————————
更改虚拟用户的主目录的属主为虚拟宿主用户:
chown -R overlord.overlord /opt/vsftp/
从虚拟用户模版配置文件复制:
cp /etc/vsftpd/vconf/vconf.tmp /etc/vsftpd/vconf/kanecruise
针对具体用户进行定制:
vi /etc/vsftpd/vconf/kanecruise
启动服务:systemctl start vsftpd
加入开机启动 systemctl enable vsftpd
重启:systemctl restart vsftpd
centos7架设vsftpd服务的更多相关文章
- CentOS7 安装 vsftpd 服务
CentOS7 安装 vsftpd 服务 0.FTP简介 FTP服务是一个跨平台的文件共享解决方案 0.1.FTP两种模式的区分:服务端的主被动模式 1)ftp一般分为两种模式,PORTFTP和PAS ...
- CentOS7部署vsftpd服务
1.查看是否已经安装了vsftpd vsftpd -version 2.安装vsftpd(CentOS7) yum install -y vsftpd 3.新建FTP目录 创建的FTP目录如下: /d ...
- Centos5搭建vsftpd服务
更换镜像源 由于centos5已经历史久远,内置的镜像源已经不能用.看: 因此,我手工更换了阿里云的源.(ps:我本来是想用网易的源,但不知为什么,这个源在安装vsftpd时提示http 404错误) ...
- 配置允许匿名用户登录访问vsftpd服务,进行文档的上传下载、文档的新建删除等操作
centos7环境下 临时关闭防火墙 #systemctl stop firewalld 临时关闭selinux #setenforce 0 安装ftp服务 #yum install vsftpd - ...
- 网络文件共享服务—vsftpd服务
文件传输协议(FTP) 文件传输协议:File Transfer Protocol是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式.它属于网络传输协议的应用层. 服务器端:vsftpd ...
- VsFtpd服务配置简明笔记
Ftp服务是最常用的文件传输方式,把配置步骤记录下来,以备将来使用. 1.用YUM安装VsFtpd服务:[root@Redis usr]# yum install vsftpd 2.安装完成后启动Vs ...
- 第11章 使用Vsftpd服务传输文件
章节简述: 本章节先通过介绍文件传输协议来帮助读者理解FTP协议的用处,安装vsftpd服务程序并逐条分析服务文件的配置参数. 完整演示vsftpd服务匿名访问模式.本地用户模式及虚拟用户模式的配置方 ...
- centos7重启rsyslog服务|centos7重启syslog服务
centos7重启rsyslog服务: systemctl restart rsyslog 使用:(killall无效) killall -HUP rsyslog
- Vsftpd服务的搭建
安装vsftpd服务程序 yum install vsftpd -y Vsftpd的程序与配置文件: 主程序 /usr/sbin/vsftpd 用户禁止登陆列表 /etc/vsftpd/ftpuser ...
随机推荐
- 利用 os.walk() 遍历目录
os.walk: walk(top, topdown=True, onerror=None, followlinks=False) 参数: top 要遍历的目录地址 topdown 为真,则优先遍历t ...
- javaSE_08Java中static、继承、重写-思维导图
思维导图看不清楚时: 1)可以将图片另存为图片,保存在本地来查看 : 2)右击在新标签中打开放大查看 (IE不支持,搜狗,360可以):
- 【JAVAEE学习笔记】hibernate04:查询种类、HQL、Criteria、查询优化和练习为客户列表增加查询条件
一.查询种类 1.oid查询-get 2.对象属性导航查询 3.HQL 4.Criteria 5.原生SQL 二.查询-HQL语法 //学习HQL语法 public class Demo { //基本 ...
- Javascript事件模型(三):JavaScript事件绑定方法总结(及Jquery)
JavaScript中绑定事件的方法主要有三种: 1 在DOM元素中直接绑定 2 JavaScript代码中直接绑定 3 绑定事件监听函数 JQuery中绑定事件的几种方法 主要有on().bind( ...
- js基础回顾-数据类型和typeof怎么用
js的基本数据类型有六种,undefined.null.number.string.boolean.object. 未定义 空 数字 字符串 布尔 ...
- Python 基于TK 文本编辑器
#coding=utf-8 import sys,os import tkFileDialog from Tkinter import * from tkFont import Font print ...
- SQLServer类型与Java类型转换问题解决
ResultSet 接口提供用于从当前行获取列值的获取 方法(getBoolean.getLong 等).可以使用列的索引编号或列的名称获取值.一般情况下,使用列索引较为高效.列从 1 开始编号.为了 ...
- CSS设置一行文字,超出部分自动隐藏
.textone { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; line-height: 25px; max-h ...
- [leetcode-521-Longest Uncommon Subsequence I]
Given a group of two strings, you need to find the longest uncommon subsequence of this group of two ...
- 2.Smarty的引入和实例化
1.把demo和lib复制出来,并且创建一个test文件夹作为工作的目录 如图所示: 2.这是libs里面的内容,其中smarty.class.php包含了smarty各种方法和功能,需要实例化它还工 ...