vsftpd配置用户和密码让其他客户端连接

2024-09-07 10:52

本文主要是介绍vsftpd配置用户和密码让其他客户端连接,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、第一个主机:vsftpd下载及配置

前置准备:

#卸载防火墙
yum -y remove firewalld
#为了不让防火墙有影响,iptables配置也清空
iptables -F
vim /etc/selinux/conf
SELINUX=disabled #主要是把它改为disabled或者permissive
SELINUXTYPE=targeted
#重启linux让selinux生效
reboot

vim ftp.sh

#! /bin/bash
#ftp客户端连接的用户名
FTP_USER=ftpuser
#ftp客户端连接的密码
FTP_PASS="ftpuser1007"
#配置文件路径
CONF_FILE="/etc/vsftpd/vsftpd.conf"
FTP_LOCAL_ROOT=/data/ftp_sources
#备份一下配置文件,改错了还可以利用备份文件还原,重新开始
cp $CONF_FILE  ${CONF_FILE}_bak
#追加配置文案的function
add_conf() {      check_conf=$1#如果没有对应的该项配置,就追加grep "$check_conf"  $CONF_FILE || echo "$check_conf" >> $CONF_FILE 
}
# 安装vsftpd服务
yum install vsftpd -y
# 创建FTP登录用户
useradd -s /sbin/nologin $FTP_USER
#设置用户密码
echo "$FTP_PASS" | passwd --stdin $FTP_USER
#如果不存在$FTP_LOCAL_ROOT目录,就创建该目录
[[ -d "$FTP_LOCAL_ROOT"  ]] ||  mkdir -p $FTP_LOCAL_ROOT
#不要忘记赋予用户.组的权限
chown -R  ${FTP_USER}.${FTP_USER} $FTP_LOCAL_ROOT
# 查询/etc/shells是否有/sbin/nologin解释器,如果没有就追加该解释器
grep "/sbin/nologin"  /etc/shells || echo "/sbin/nologin" >> /etc/shells 
# 追加给/etc/vsftpd/vsftpd.conf的配置
add_conf "listen_port=8090"
add_conf "chroot_local_user=YES"
add_conf "chroot_list_enable=NO"
add_conf "allow_writeable_chroot=YES"
add_conf "userlist_deny=NO"
add_conf "userlist_file=/etc/vsftpd/user_list"
add_conf "local_root=/data/ftp_sources"
add_conf "vsftpd_log_file=/var/log/vsftpd.log"
#注意将原来的listen=NO和listen_ipv6=YES注释掉
sed -i 's/^listen=NO/#listen=NO/' $CONF_FILE
sed -i 's/^listen_ipv6=/#listen_ipv6=/' $CONF_FILE
#将ftp能够登录的用户列表文件备份
cp /etc/vsftpd/user_list  /etc/vsftpd/user_list_bak
#将ftp能够登录的用户列表文件清空,只留ftpuser这个用户
echo "ftpuser" > /etc/vsftpd/user_listsystemctl restart vsftpd
systemctl enable vsftpd

使用ftp.sh

chmod +x ftp.sh
./ftp.sh

二、其他linux主机使用ftp连接

#下载ftp插件
yum -y install ftp[root@localhost shared_dir]# ftp 192.168.137.12 8090
Connected to 192.168.137.12 (192.168.137.12).
220 (vsFTPd 3.0.3)
Name (192.168.137.12:root): ftpuser
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>

下载文件使用get xxx

上传使用put xxx

进入本机目录: lcd 本机目录

三、windows电脑使用Filezilla连接

下载地址:

Download FileZilla Client for macOS (Intel)

这篇关于vsftpd配置用户和密码让其他客户端连接的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1144861

相关文章

Spring Security中用户名和密码的验证完整流程

《SpringSecurity中用户名和密码的验证完整流程》本文给大家介绍SpringSecurity中用户名和密码的验证完整流程,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定... 首先创建了一个UsernamePasswordAuthenticationTChina编程oken对象,这是S

Linux中SSH服务配置的全面指南

《Linux中SSH服务配置的全面指南》作为网络安全工程师,SSH(SecureShell)服务的安全配置是我们日常工作中不可忽视的重要环节,本文将从基础配置到高级安全加固,全面解析SSH服务的各项参... 目录概述基础配置详解端口与监听设置主机密钥配置认证机制强化禁用密码认证禁止root直接登录实现双因素

MySQL中的表连接原理分析

《MySQL中的表连接原理分析》:本文主要介绍MySQL中的表连接原理分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、环境3、表连接原理【1】驱动表和被驱动表【2】内连接【3】外连接【4编程】嵌套循环连接【5】join buffer4、总结1、背景

嵌入式数据库SQLite 3配置使用讲解

《嵌入式数据库SQLite3配置使用讲解》本文强调嵌入式项目中SQLite3数据库的重要性,因其零配置、轻量级、跨平台及事务处理特性,可保障数据溯源与责任明确,详细讲解安装配置、基础语法及SQLit... 目录0、惨痛教训1、SQLite3环境配置(1)、下载安装SQLite库(2)、解压下载的文件(3)、

Linux如何快速检查服务器的硬件配置和性能指标

《Linux如何快速检查服务器的硬件配置和性能指标》在运维和开发工作中,我们经常需要快速检查Linux服务器的硬件配置和性能指标,本文将以CentOS为例,介绍如何通过命令行快速获取这些关键信息,... 目录引言一、查询CPU核心数编程(几C?)1. 使用 nproc(最简单)2. 使用 lscpu(详细信

SpringBoot连接Redis集群教程

《SpringBoot连接Redis集群教程》:本文主要介绍SpringBoot连接Redis集群教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 依赖2. 修改配置文件3. 创建RedisClusterConfig4. 测试总结1. 依赖 <de

SpringSecurity显示用户账号已被锁定的原因及解决方案

《SpringSecurity显示用户账号已被锁定的原因及解决方案》SpringSecurity中用户账号被锁定问题源于UserDetails接口方法返回值错误,解决方案是修正isAccountNon... 目录SpringSecurity显示用户账号已被锁定的解决方案1.问题出现前的工作2.问题出现原因各

PostgreSQL数据库密码被遗忘时的操作步骤

《PostgreSQL数据库密码被遗忘时的操作步骤》密码遗忘是常见的用户问题,因此提供一种安全的遗忘密码找回机制是十分必要的,:本文主要介绍PostgreSQL数据库密码被遗忘时的操作步骤的相关资... 目录前言一、背景知识二、Windows环境下的解决步骤1. 找到PostgreSQL安装目录2. 修改p

MySQL 用户创建与授权最佳实践

《MySQL用户创建与授权最佳实践》在MySQL中,用户管理和权限控制是数据库安全的重要组成部分,下面详细介绍如何在MySQL中创建用户并授予适当的权限,感兴趣的朋友跟随小编一起看看吧... 目录mysql 用户创建与授权详解一、MySQL用户管理基础1. 用户账户组成2. 查看现有用户二、创建用户1. 基

Nginx 重写与重定向配置方法

《Nginx重写与重定向配置方法》Nginx重写与重定向区别:重写修改路径(客户端无感知),重定向跳转新URL(客户端感知),try_files检查文件/目录存在性,return301直接返回永久重... 目录一.try_files指令二.return指令三.rewrite指令区分重写与重定向重写: 请求