Linux中关于远程上传的下载

1.ftp服务

1.ftp服务的启动

1.编辑文件:vim /etc/sysconfig/selinux
第6行selinux=disabled
保存退出。
重启主机。

2.安装vsftpd

yum install vsftpd -y

systmctl start vsftpd
systemctl enable vsftpd

3.防火墙允许ftp连接
firewall-cmd --permanent --add-service=ftp ##允许ftp连接
firewall-cmd --reload ##重启火墙使设置生效

网页王文ftp://172.25.254.100

2.ftp的基本信息

访问数据端口:21
数据传输端口:>1024随机端口

默认发布目录:/var/ftp/
访问方式:
lftp ip地址 ##匿名登陆
lftp ip地址 -u username ##用户登陆

配置文件: /etc/vsftpd/vsftpd.conf

3.ftp的安全部署

编辑配置文件:vim /etc/vsftpd/vsftpd.conf

(1)anonymous_enable=YES|NO:匿名用户是否可登陆
(2)local_enable=YES|NO:本地用户是否可以登陆
(3)write_enable=YES|NO:本地用户是否可写文件
(4)设置匿名用户可写:
a.改变目录权限,使用户组有可写权限:chmod 775 /var/ftp/pub
b.目录的所有组改成ftp组:chgrp ftp /var/ftp/pub(匿名登陆用户属于ftp组)
编辑文件/etc/vsftpd/vsftpd.conf第29行,改为YES
(5)anon_upload_enable=YES|NO:匿名用户可上传
(6)anon_world_readable_only=YES|NO:匿名用户可下载(NO表示可下载)
(7)anon_mkdir_write_enable=YES|NO:匿名用户建立目录
(8)anon_other_write_enable=YES|NO:匿名用户删除和重命名
(9)anon_root=目录:匿名用户家目录修改
(10)anon_umask=xxx:匿名用户上传文件默认权限修改
(11)匿名用户的身份修改:
chown_uploads=YES
chown_username=student(修改为student身份)
(12)anon_max_rate=102400:最大上传速率
(13)max_clients=5:最大连接数


每次更改/etc/vsftpd/vsftpd.conf文件后,都需要重启服务使更改生效:

systemctl restart vsftpd

1.建立用户白名单:
(1)新建白名单文件:vim /etc/vsftpd/chroot_list
(2)更改配置文件:
写入内容:
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

2.限制本地用户登陆
vim /etc/vsftpd/ftpusers ##用户黑名单
vim /etc/vsftpd/user_list ##用户临时黑名单

3.第二种用户白名单设定
userlist_deny=NO ##设定参数,此文件从临时黑名单变成白名单,只在名单中出现的用户可登陆ftp
/etc/vsftpd/user_list:编辑文件增删改名单
用户就可以登陆ftp了。

4.ftp虚拟帐号身份

(1)创建虚拟帐号身份
vim /etc/vsftpd/userfile(文件名任意)
写入内容:
user1
passwd1
user2
passwd2
user3
passwd3
保存退出。

帐号密码文件哈希加密:db_load -T -t hash -f /etc/vsftpd/userfile /etc/vsftpd/userfile.db

vim /etc/pam.d/usercheck
account required pam_userdb.so db=/etc/vsftpd/userfile
auth required pam_userdb.so db=/etc/vsftpd/userfile

vim /etc/vsftpd/vsftpd.conf
pam_service_name=usercheck
guest_enable=YES

(2)虚拟帐号身份指定
guwst_username=ftpuser
chmod u-w /home/ftpuser

(3)虚拟帐号家目录独立设定

编辑文件:vim /etc/vsftpd/vsftpd.conf
添加内容:
local_root=/ftphome/$USER
user_sub_token=$USER

建立目录区分虚拟帐号登陆后进入哪一个家目录:
mkdir /ftphome/user1/user1dir -p
mkdir /ftphome/user2/user2dir -p
mkdir /ftphome/user3/user3dir -p
(这里没有改变这个家目录的权限)

登陆虚拟帐号测试。

5.虚拟账户独立权限配置

(1)新建存储各个虚拟帐号的独立权限的目录:mkdir /etc/vsftpd/userconfig

(2)编辑文件:vim /etc/vsftpd/vsftpd.config
写入内容:
user_config_dir=/etc/vsftpd/userconfig

(3)新建文件:vim /etc/vsftpd/user1(这个文件以虚拟用户的家目录作文件名)
写入相关权限.
保存退出


关于一些ftp的错误提示代码:

350:认证失败

500:权限过大

530:密码帐号错误、认证策略错误

550:服务本身不允许操作

原文地址:https://www.cnblogs.com/ChangAn223/p/9417417.html

时间: 2024-09-29 09:47:47

Linux中关于远程上传的下载的相关文章

如何在Linux中使用sFTP上传或下载文件与文件夹

如何在Linux中使用sFTP上传或下载文件与文件夹 sFTP(安全文件传输程序)是一种安全的交互式文件传输程序,其工作方式与 FTP(文件传输协议)类似. 然而,sFTP 比 FTP 更安全;它通过加密 SSH 传输处理所有操作.在本文中,我们将向你展示如何使用 sFTP 上传/下载整个目录(包括其子目录和子文件). 作者:Aaron Kili来源:Linux中国|2017-03-09 14:42 移动端 收藏 分享 51CTO诚邀您9月23号和秒拍/国美/美团元专家一起聊智能CDN的优化之路

Linux中使用SecureCRT上传、下载文件命令sz与rz用法实例

借助securtCRT,使用linux命令sz可以很方便的将服务器上的文件下载到本地,使用rz命令则是把本地文件上传到服务器 其中,对于sz和rz的理解与记忆我用了如下的方法(因为很多时候容易搞混):sz中的s意为send(发送),告诉客户端,我(服务器)要发送文件 send to cilent,就等同于客户端在下载.rz中的r意为received(接收),告诉客户端,我(服务器)要接收文件 received by cilent,就等同于客户端在上传. 注意:sz和rz命令需要服务器支持,如果提

java使用Jsch实现远程操作linux服务器进行文件上传、下载,删除和显示目录信息

1.java使用Jsch实现远程操作linux服务器进行文件上传.下载,删除和显示目录信息. 参考链接:https://www.cnblogs.com/longyg/archive/2012/06/25/2556576.html https://www.cnblogs.com/longyg/archive/2012/06/25/2561332.html https://www.cnblogs.com/qdwyg2013/p/5650764.html#top 引入jar包的maven依赖如下所示:

iOS开发中文件的上传和下载功能的基本实现-备用

感谢大神分享 这篇文章主要介绍了iOS开发中文件的上传和下载功能的基本实现,并且下载方面讲到了大文件的多线程断点下载,需要的朋友可以参考下 文件的上传 说明:文件上传使用的时POST请求,通常把要上传的数据保存在请求体中.本文介绍如何不借助第三方框架实现iOS开发中得文件上传. 由于过程较为复杂,因此本文只贴出部分关键代码. 主控制器的关键代码: 复制代码代码如下: YYViewController.m#import "YYViewController.h" #define YYEnc

struts2中的文件上传和下载

天下大事,必做于细.天下难事,必作于易. 曾经见过某些人,基础的知识还不扎实就去学习更难的事,这样必然在学习新的知识会很迷惑结果 再回来重新学习一下没有搞懂的知识,这必然会导致学习效率的下降!我写的这篇上传和下载都很基础. 十分适合初学者! jsp:页面 <!--在进行文件上传时,表单提交方式一定要是post的方式,因为文件上传时二进制文件可能会很大,还有就是enctype属性,这个属性一定要写成multipart/form-data, 不然就会以二进制文本上传到服务器端--> <for

JSP中文件的上传于下载示例

一.文件上传的原理 1.文件上传的前提: a.form表单的method必须是post b.form表单的enctype必须是multipart/form-data(决定了POST请求方式,请求正文的数据类型) 注意:当表单的enctype是multipart/form-data,传统的获取请求参数的方法失效. 请求正文:(MIME协议进行描述的,正文是多部分组成的) -----------------------------7dd32c39803b2 Content-Disposition:

struts中文件的上传和下载

首先我们还是新建一个新的web project 取名为upload_test 然后在WebRoot中新建两个jsp页面 upload.jsp 和result.jsp 代码分别如下: upload.jsp Jsp代码   <%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%> <% String path = request.getCont

Linux中ftp不能上传文件/目录的解决办法

在linux中不能上传文件或文件夹最多的问题就是权限问题,但有时也不一定是权限问题了,像我就是空间不够用了,下面我来总结一些ftp不能上传文件/目录的解决办法 在排除用户组和权限等问题后,最可能引起ftp下文件无法上传并经常被忽略的因素就是硬盘空间已满,而导致硬盘空间满的问题多数是日志文件所占用的,例如mysql的日志会在不知不觉中变得十分庞大,直至占满剩余的硬盘空间. 解决办法: 1.定期手动清理或使用脚本清理mysql日志或其他相关日志文件. 2.关闭mysql日志(不推荐) 上面是空间有问

CentOs远程上传与下载

一.服务器端软件: 命令:yum  install  lrzsz 二.客户端软件(windows xp): Securecrt(破解版) 三.客户端操作: 1.初始页面 点击链接: 2.选择sftp 在”文件”——>“链接SFTP标签页(S)”如下图所示: 3.操作命令信息 首先可以查询该FTP给我们提供了那些基本命令,就输入:help命令,就帮我们显示 该FTP提供所有的命令 pwd:  查询linux主机所在目录(也就是远程主机目录) lpwd: 查询本地目录(一般指windows上传文件的