网络控制相关命令:

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服务的更多相关文章

  1. CentOS7 安装 vsftpd 服务

    CentOS7 安装 vsftpd 服务 0.FTP简介 FTP服务是一个跨平台的文件共享解决方案 0.1.FTP两种模式的区分:服务端的主被动模式 1)ftp一般分为两种模式,PORTFTP和PAS ...

  2. CentOS7部署vsftpd服务

    1.查看是否已经安装了vsftpd vsftpd -version 2.安装vsftpd(CentOS7) yum install -y vsftpd 3.新建FTP目录 创建的FTP目录如下: /d ...

  3. Centos5搭建vsftpd服务

    更换镜像源 由于centos5已经历史久远,内置的镜像源已经不能用.看: 因此,我手工更换了阿里云的源.(ps:我本来是想用网易的源,但不知为什么,这个源在安装vsftpd时提示http 404错误) ...

  4. 配置允许匿名用户登录访问vsftpd服务,进行文档的上传下载、文档的新建删除等操作

    centos7环境下 临时关闭防火墙 #systemctl stop firewalld 临时关闭selinux #setenforce 0 安装ftp服务 #yum install vsftpd - ...

  5. 网络文件共享服务—vsftpd服务

    文件传输协议(FTP) 文件传输协议:File Transfer Protocol是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式.它属于网络传输协议的应用层. 服务器端:vsftpd ...

  6. VsFtpd服务配置简明笔记

    Ftp服务是最常用的文件传输方式,把配置步骤记录下来,以备将来使用. 1.用YUM安装VsFtpd服务:[root@Redis usr]# yum install vsftpd 2.安装完成后启动Vs ...

  7. 第11章 使用Vsftpd服务传输文件

    章节简述: 本章节先通过介绍文件传输协议来帮助读者理解FTP协议的用处,安装vsftpd服务程序并逐条分析服务文件的配置参数. 完整演示vsftpd服务匿名访问模式.本地用户模式及虚拟用户模式的配置方 ...

  8. centos7重启rsyslog服务|centos7重启syslog服务

    centos7重启rsyslog服务: systemctl restart rsyslog 使用:(killall无效) killall -HUP rsyslog

  9. Vsftpd服务的搭建

    安装vsftpd服务程序 yum install vsftpd -y Vsftpd的程序与配置文件: 主程序 /usr/sbin/vsftpd 用户禁止登陆列表 /etc/vsftpd/ftpuser ...

随机推荐

  1. 利用 os.walk() 遍历目录

    os.walk: walk(top, topdown=True, onerror=None, followlinks=False) 参数: top 要遍历的目录地址 topdown 为真,则优先遍历t ...

  2. javaSE_08Java中static、继承、重写-思维导图

    思维导图看不清楚时: 1)可以将图片另存为图片,保存在本地来查看 : 2)右击在新标签中打开放大查看 (IE不支持,搜狗,360可以):

  3. 【JAVAEE学习笔记】hibernate04:查询种类、HQL、Criteria、查询优化和练习为客户列表增加查询条件

    一.查询种类 1.oid查询-get 2.对象属性导航查询 3.HQL 4.Criteria 5.原生SQL 二.查询-HQL语法 //学习HQL语法 public class Demo { //基本 ...

  4. Javascript事件模型(三):JavaScript事件绑定方法总结(及Jquery)

    JavaScript中绑定事件的方法主要有三种: 1 在DOM元素中直接绑定 2 JavaScript代码中直接绑定 3 绑定事件监听函数 JQuery中绑定事件的几种方法 主要有on().bind( ...

  5. js基础回顾-数据类型和typeof怎么用

    js的基本数据类型有六种,undefined.null.number.string.boolean.object. 未定义        空      数字        字符串    布尔     ...

  6. Python 基于TK 文本编辑器

    #coding=utf-8 import sys,os import tkFileDialog from Tkinter import * from tkFont import Font print ...

  7. SQLServer类型与Java类型转换问题解决

    ResultSet 接口提供用于从当前行获取列值的获取 方法(getBoolean.getLong 等).可以使用列的索引编号或列的名称获取值.一般情况下,使用列索引较为高效.列从 1 开始编号.为了 ...

  8. CSS设置一行文字,超出部分自动隐藏

    .textone { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; line-height: 25px; max-h ...

  9. [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 ...

  10. 2.Smarty的引入和实例化

    1.把demo和lib复制出来,并且创建一个test文件夹作为工作的目录 如图所示: 2.这是libs里面的内容,其中smarty.class.php包含了smarty各种方法和功能,需要实例化它还工 ...