如何简单利用ssh实现window与Linux文件的互传?

简介: 一、环境搭建:本地搭建工具清单:1)、Linux(centos)操作系统;2)、vmplayer虚拟机;3)、ssl ftp工具 FileZilla FTP Client;注意以上工具中vmplayer...

一、环境搭建:

本地搭建工具清单:

1)、Linux(centos)操作系统;

2)、vmplayer虚拟机;

3)、ssl ftp工具 FileZilla FTP Client;

注意以上工具中vmplayer和centos 非必须,可以替换为docker一键搭建Linux操作系统;

1、搭建一个Linux操作系统,这里测试可以搭建在自己pc电脑上,这里我们选用云服务器测试,一键部署centos7.2服务器,如使用本机安装需要先去centos官网去下载最新版本操作系统,官网下载地址见https://www.centos.org/download/

2、安装一个支持ssl ftp的 FileZilla FTP Client工具,下载window安装包,下一步即可傻瓜式的完成安装;window下载地址https://filezilla-project.org/download.php

这里不具体介绍vmplayer 如何安装centos步骤,如不懂的,可以网上搜索,应该有大量的文章介绍;

下一步我们继续介绍window如何与linux互传文件的相应的配置,其实原理很简单,利用sshd 这个服务去实现;

二、简单介绍一下ssh,以及sshd与ssh 有什么差别;

SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UXLinuxAIXSolarisDigital UNIXIrix,以及其他平台,都可运行SSH。

1、sshd 是ssh的服务端程序脚本;

2、ssh 是使用 ssl链接的ssh客户端;

这里由于我们要实现window与linux的互传,需要在Linux上安装sshd并启动;

查看SSH是否安装(检查是否装了SSH包)。
输入命令:rpm -qa | grep ssh 或者(rpm -qa | grep openssh)
检查系统是否安装了ssh,如有即可直接使用;

下面是yum安装脚本:

先来搜索一下sshd

1、yum search sshd


Loaded plugins: fastestmirror, replace
Determining fastest mirrors
 * base: mirrors.cloud.aliyuncs.com
 * extras: mirrors.cloud.aliyuncs.com
 * updates: mirrors.cloud.aliyuncs.com
 * webtatic: uk.repo.webtatic.com
========================================= Matched: sshd =========================================
fail2ban.noarch : Daemon to ban hosts that cause multiple authentication errors
gsi-openssh-server.x86_64 : SSH server daemon with GSI authentication
jsch.noarch : Pure Java implementation of SSH2
libnss-mysql.x86_64 : NSS library for MySQL
openssh-server.x86_64 : An open source SSH server daemon
2、我们找到了openssh-server.x86_64 这个软件,开始安装:

yum install openssh-server.x86_64

3、等到安装完后,可以使用默认到配置信息启动;

service sshd start 或者 sudo /etc/init.d/sshd start

4、查看sshd是否成功启动

ps -ef|grep sshd 或是 sudo /etc/init.d/sshd status 或者(service sshd status)

5、停止sshd命令

service sshd stop 或是 kill pid  或 sudo /etc/init.d/sshd stop
以上就是sshd 的整个安装运行过程;

三、其他高级设置

如自动随系统启动:

1、检查sshd是否在本运行级别下设置为开机启动
输入命令:chkconfig --list sshd 
查看CentOS 系统中SSH服在本运行级别下是否已经设置为开机启动,如果没设置启动就使用如下命令[chkconfig --level 2345 sshd on]设置下即可。

2、设置SSH服务为开机启动。
输入命令:chkconfig sshd on 即可。
注:若是 chkconfig sshd off 则禁止SSH开机启动。

OpenSSH服务器配置 vim /etc/ssh/sshd_config 文件重要参数以及作用,这里根据自己的需求进行设置。

# cat /etc/ssh/sshd_config |grep -v '#'|grep -v ^$
Port 22 --监听端口
Protocol 2 --使用版本2
ListenAddress 0.0.0.0 --监听地址
LoginGraceTime 2m --登录超时时间
PermitRootLogin yes --允许root通过ssh登录
MaxAuthTries 6 --密码尝试6次
RSAAuthentication yes --支持ras加密
PubkeyAuthentication yes --是否支持密钥对验证
AuthorizedKeysFile .ssh/authorized_keys --服务端更新密钥对密钥对验证时,客服端公钥存储文件

PermitEmptyPasswords no --是否允许空密码登录
PasswordAuthentication yes --是否支持账号/密码登录方式
UseDNS no --禁用DNS反解
Subsystem sftp /usr/libexec/openssh/sftp-server --支持sftp
AllowUsers root 只允许root 可以远程
DenyUsers
AllowGroups

参数 作用
Port 22 默认的sshd服务端口
ListenAddress 0.0.0.0 设定sshd服务器监听的IP地址
Protocol 2 SSH协议的版本号 1,2
HostKey /tc/ssh/ssh_host_key SSH协议版本为1时,DES私钥存放的位置
HostKey /etc/ssh/ssh_host_rsa_key SSH协议版本为2时,RSA私钥存放的位置
HostKey /etc/ssh/ssh_host_dsa_key SSH协议版本为2时,DSA私钥存放的位置
PermitRootLogin yes/no 设定是否允许root管理员直接登录
StrictModes yes 当远程用户的私钥改变时直接拒绝连接
MaxAuthTries 6 最大密码尝试次数
MaxSessions 10 最大终端数
PasswordAuthentication yes/no 是否允许密码验证
PermitEmptyPasswords yes/no

是否允许空密码登录(很不安全)

 

 

四、使用FileZilla FTP Client 来互传文件

FileZilla FTP Client 的使用很简单,打开软件,填入你的服务器IP、默认端口(22为sftp,21为ftp)、账号、密码即可成功登录;

 

登录成功后即可看到文件清单,可以与window愉快的互传文件了;

当然sshd 的强大不仅仅是互传文件哦,你还可以通过一些ssh客户端工具(如SSH 、Xshell、Putty 等)管理你的整个Linux操作系统;

目录
相关文章
|
4天前
|
Linux
Linux 中经常见到的 gz 文件
Linux 中经常见到的 gz 文件
|
14天前
|
网络协议 Unix Linux
Linux 多种方式实现文件共享(三)NFS 6
【8月更文挑战第6天】NFS 即网络文件系统,是一种使用于分布式文件系统的协议,NFS 功能是通过网络让不同的机器,不同的操作系统能够彼此分享各自的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据
49 13
|
4天前
|
Linux 网络安全 Python
Linux离线安装Python时ssh和hashlib死活安装不上的解决方案
本文提供了Linux环境下离线安装Python时遇到的"ImportError: No module named _ssl"和"ERROR:root:code for hash md5|sha1|sha224|sha256|sha384|sha512 was not found"两个问题的解决方案,通过设置OpenSSL环境变量和编辑Python源码配置文件来解决。
9 1
|
4天前
|
存储 Linux Windows
Linux zip命令:压缩文件或目录
我们经常会在 Windows 系统上使用 “.zip”格式压缩文件,其实“.zip”格式文件是 Windows 和 Linux 系统都通用的压缩文件类型,属于几种主流的压缩格式(zip、rar等)之一,是一种相当简单的分别压缩每个文件的存储格式,本节要讲的 zip 命令,类似于 Windows 系统中的 winzip 压缩程序,其基本格式如下: [root@localhost ~]#zip [选项] 压缩包名 源文件或源目录列表 注意,zip 压缩命令需要手工指定压缩之后的压缩包名,注意写清楚扩展名,以便解压缩时使用。 下面给大家举几个例子。 【例 1】zip 命令的基本使用。 [r
18 0
Linux zip命令:压缩文件或目录
|
7天前
|
Linux Shell 数据库
【绝技大公开】Linux文件查找新招式:打破常规,探索那些鲜为人知的技巧,让你成为真正的文件追踪大师!
【8月更文挑战第13天】文件查找是Linux用户必备技能,能大幅提升工作效率。本文介绍几种高效查找方法,包括使用`column`美化`find`输出、利用`locate`和`mlocate`快速搜索、编写脚本自动化任务、采用`fd`现代工具提升查找体验,以及结合`grep`和`rg`搜索文件内容。此外,还推荐了`Gnome Search Tool`和`Albert`等图形界面工具,为用户提供多样选择。掌握这些技巧,让你的工作更加得心应手。
20 2
|
13天前
|
存储 网络协议 Linux
Linux 多种方式实现文件共享(四)iSCSI 磁盘共享服务 7
【8月更文挑战第7天】iSCSI技术是一种新储存技术, iSCSI 提供了在 IP 网络封装 SCSI 命令,且以TCP/IP协议传输.
35 5
|
11天前
|
Linux
Linux专栏07:Linux基本指令之文件搜索指令
Linux专栏07:Linux基本指令之文件搜索指令
34 2
|
14天前
|
存储 Linux 开发工具
Linux 多种方式实现文件共享(二)Samba 5
【8月更文挑战第5天】Samba 文件共享
39 5
|
14天前
|
Linux Perl
Linux进行文件字符串替换
【8月更文挑战第5天】Linux进行文件字符串替换
74 3
|
16天前
|
安全 Linux 网络安全
Linux 多种方式实现文件共享(一)VSFTP4
【8月更文挑战第4天】Linux系统中VSFTP(Very Secure FTP)服务的配置方法,涵盖匿名访问、本地用户登录及虚拟用户管理等场景。VSFTP作为增强版FTP服务器,具备较高安全性,如普通用户权限运行、命令整合、chroot限制等特性。文中详细说明了配置步骤,包括安装VSFTP、修改主配置文件(如启用被动模式、设置端口范围)、创建用户及家目录、设置虚拟用户认证数据库等。此外,还介绍了如何实现FTP服务的加密传输,通过生成SSL证书并配置VSFTP以支持安全连接。这些配置适用于不同需求的文件共享服务。
38 4