Linux之sftp服务
Linux之sftp服务
一、sftp介绍
转自:
[1]Linux如何开启SFTP https://www.cnblogs.com/xuliangxing/p/7120205.html
SFTP是Secure File Transfer Protocol的缩写,安全文件传送协议。可以为传输文件提供一种安全的加密方法。
SFTP与FTP有着几乎一样的语法和功能。
SFTP为SSH的一部分,是一种传输档案至Blogger伺服器的安全方式。其实在SSH软件包中,已经包含了一个叫作SFTP(Secure File Transfer Protocol的安全文件传输子系统,SFTP本身没
有单独的守护进程,它必须使用SSHD守护进程(端口号默认是22)来完成相应的连接操作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。
SFTP同样是使用加密传输认证信息和传输的数据,所以,使用SFTP是非常安全的。但是,由于这种传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低得多,如果对网络安全性要求更高时,
可以使用SFTP代替FTP。
二、开启关闭sftp
开始SSH服务,就会自动开启SFTP。关闭SSH服务,也会关闭SFTP。
1. /etc/init.d/sshd start
2. /etc/init.d/sshd stop
三、sftp常用命令
转自:
[1]sftp常用命令介绍 https://blog.csdn.net/qq_24309787/article/details/80117269
[2]SFTP服务的使用 https://www.cnblogs.com/uestc-mm/p/6365947.html
1.sftp user@ip
你要用sftp, 当然得登录到sftp服务器啊,在linux的shell中执行上面的命令后,linux shell会提示用户输入密码,我们就输入password吧。这样就成功建立了sftp连接。
2. help
建立连接后,linux shell中的$编程了sftp>, 这也对。现在执行以下help, 可以看看sftp支持哪些命令。
3. pwd和lpwd
pwd是看远端服务器的目录,即sftp服务器默认的当前目录。lpwd是看linux本地目录。
4. ls和lls
ls是看sftp服务器下当前目录下的东东, lls是看linux当前目录下的东东。
5. put a.txt
这个是把linux当前目录下的a.txt文件上传到sftp服务器的当前目录下。
put /home/fuyatao/downloads/Linuxgl.pdf /var/www/fuyatao/
这条语句将把本地/home/fuyatao/downloads/目录下的linuxgl.pdf文件上传至远程主机/var/www/fuyatao/ 目录下。
6. get b.txt
这个是把sftp服务器当前目录下的b.txt文件下载到linux当前目录下。
get /var/www/fuyatao/index.php /home/fuyatao/
这条语句将从远程主机的/var/www/fuyatao/目录下将index.php下载到本地/home/fuyatao/目录下。
7. !command
这个是指在linux上执行command这个命令, 比如!ls是列举linux当前目录下的东东, !rm a.txt是删除linux当前目录下的a.txt文件。
这个命令非常非常有用, 因为在sftp> 后输入命令, 默认值针对sftp服务器的, 所以执行rm a.txt删除的是sftp服务器上的a.txt文件, 而非本地的linux上的a.txt文件。
8. exit和quit
退出。
总之,连接后,有一个help命令,足矣足矣。
四、sftp服务配置
转自:
[1]Linux下sftp服务配置 https://www.cnblogs.com/huangyanqi/p/11304257.html
[2]linux如何搭建sftp服务器 https://www.cnblogs.com/reachos/p/11157329.html
sftp服务配置步骤:
(1)创建sftp用户组
groupadd sftp
(2)创建ftp用户
useradd -g sftp -s /sbin/nologin -M Tom
passwd Tom
(3)创建Tom家目录并指定
注释:给家目录更改属主并授权家目录属主必须是root,权限可以是755或者750
mkdir /opt/data -p
usermod -d /opt/data Tom
chown root:root /opt/data
chmod 755 /opt/data
(4)创建可写目录
mkdir /opt/data/file -p
chown Tom:sftp /opt/data/file
(5)编辑配置文件/etc/ssh/sshd_config
注释掉X11Forwarding yes 这句话,大概在101行
注释掉Subsystem sftp /usr/libexec/openssh/sftp-server 这句话,大概在132行 并在文件末尾添加如下语句:
Subsystem sftp internal-sftp
Match User Tom
ChrootDirectory /opt/data
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no systemctl restart sshd
(6)验证
systemctl restart sshd
sftp Tom@127.0.0.1
五、附加
1、安装、卸载ftp服务
[1]Linux中安装,卸载ftp|sftp服务 http://www.jh-floor.com/fuwuqijiaocheng/Linux/489.html
sftp采用的是ssh加密隧道,安装性方面较ftp强,而且依赖的是系统自带的ssh服务,不像ftp还需要额外的进行安装
安装、卸载ftp服务:
安装vsftpd软件
rpm -qa |grep vsftpd #检测是否安装了vsftpd软件
yum install vsftpd -y #安装ftp服务
启动关闭服务:
service vsftpd start #启动ftp服务
service vsftpd stop #关闭ftp服务
service vsftpd restart #重启ftp服务
卸载ftp服务
rpm -qa |grep vsftp #查看vsftpd软件版本
service vsftpd stop #先关闭ftp服务
rpm -e 版本名称 #卸载vsftpd软件
2、java实现SFTP多文件上传,删除
[1]SFTP多文件上传,删除 https://www.cnblogs.com/future-eye/p/8194544.html
Linux之sftp服务的更多相关文章
- Linux设置SFTP服务用户目录权限
我们有时会遇到这样的需求,限制一个Linux用户,让他只能在指定的目录下进行添加.修改.删除操作,并且只能使用sftp登录服务器,不能用ssh操作.这些可以通过配置sftp服务实现. 提供sftp服务 ...
- Linux - 设置SFTP服务用户目录权限
我们有时会遇到这样的需求,限制一个Linux用户,让他只能在指定的目录下进行添加.修改.删除操作,并且只能使用sftp登录服务器,不能用ssh操作.这些可以通过配置sftp服务实现. 创建新用户www ...
- Linux下 sftp服务配置
查看openssh的版本,使用ssh -V 命令来查看openssh的版本,版本必须大于4.8p1,低于的这个版本需要升级. 参考博客:https://yq.aliyun.com/articles/6 ...
- 转:linux 修改sftp服务默认提供者sshd的session timeout
ssh连接超时问题解决方案: 1.修改server端的etc/ssh/sshd_config ClientAliveInterval 60 #server每隔60秒发送一次请求给client,然后cl ...
- Linux SSH和SFTP服务分离
Linux SSH和SFTP服务分离 学习了:https://www.cnblogs.com/zihanxing/articles/5665383.html 都是监听22端口:
- linux 启动ftp服务,sftp服务
启动ftp服务:yum install vsftpd 在/etc/rc.d/init.d/目录下:命令 service vsftp start启动ssh服务,sftp服务在/etc/init.d/目录 ...
- linux 上搭建sftp服务
原文链接:https://www.cnblogs.com/yanduanduan/p/9046723.html sftp和ftp的区别 FTP是一种文件传输协议,一般是为了方便数据共享的.包括一个FT ...
- Linux 7.5 SSH服务和SFTP服务分离
SFTP是SSH的一部分,SFTP没有单独的守护进程,它必须使用SSHD守护进程(端口号默认是22)来完成相应的连接操作,所以从某种意义上来说,SFTP并不像是一个服务器程序,而更像是一个客户端程序. ...
- Debian 8开启sftp服务
看到某云的CDN居然是使用ftp这种早该淘汰的协议,不禁有些吐槽.ftp曾经作为互联网上最重要的协议,但漫长使用过程中体现出的各种缺点,已不适合再使用.其中最致命的问题就是明文传输用户密码.建议使用这 ...
随机推荐
- OpenEuler树莓派基础实验
OpenEuler树莓派基础实验 1.任务详情 1. 参考https://www.cnblogs.com/rocedu/p/14615565.html 完成OpenEuler的安装,提交过程博客和截图 ...
- docker的集群管理工具
docker 集群管理三剑客: docker compose: Compose 是用于定义和运行多容器 Docker 应用程序的工具.通过 Compose,您可以使用 YML 文件来配置应用程序需要的 ...
- char* 和 char[] 的区别
一.代码 有关下面代码,p和q的区别是什么: int main(int argc, char *argv[]) { char* p = "Hello World"; char q[ ...
- C++ new 运算符 用法总结
C++ new 运算符 用法总结 使用 new 运算符 分配内存 并 初始化 1.分配内存初始化标量类型(如 int 或 double),在类型名后加初始值,并用小括号括起,C++11中也支持大括号. ...
- 聊一聊声明式接口调用与Nacos的结合使用
背景 对于公司内部的 API 接口,在引入注册中心之后,免不了会用上服务发现这个东西. 现在比较流行的接口调用方式应该是基于声明式接口的调用,它使得开发变得更加简化和快捷. .NET 在声明式接口调用 ...
- 利用DNS缓存和TLS协议将受限SSRF变为通用SSRF
本文首发于先知社区 前言 这是今年BlackHat上的一个议题:When TLS Hacks You,作者是latacora的Joshua Maddux 议题提出了一个新的ssrf攻击思路,利用DNS ...
- 你真的懂Redis的5种基本数据结构吗?
摘要: 你真的懂Redis的5种基本数据结构吗?这些知识点或许你还需要看看. 本文分享自华为云社区<你真的懂Redis的5种基本数据结构吗?这些知识点或许你还需要看看>,作者:李子捌. 一 ...
- [loj6278]数列分块入门2
做法1 以$K$为块大小分块,并对每一个块再维护一个排序后的结果,预处理复杂度为$o(n\log K )$ 区间修改时将整块打上标记,散块暴力修改并归并排序,单次复杂度为$o(\frac{n}{K}+ ...
- [bzoj1145]图腾
如果将关系用一个数字来表示(相等表示不确定),那么题目相当于要计算$1324-1243-1432$=$(1323-1423)-(1233-1234)-(1322-1423)$=$1323+1234-( ...
- 如何找到mysql磁盘地址
show global variables like "%datadir%"; 我的位置: C:\ProgramData\MySQL\MySQL Server 5.5\Data\