samba与ftp传输速度比较 samba和ftp_服务器端

samba服务

Smb主要作为网络通信协议;
Smb是基于cs架构;client/server 还有 bs架构;broswer/server
完成Linux与windows之间的共享;linux与linux之间共享用NFS

samba 实战部署

第一步:安装samba
 yum install samba -y第二步:编辑配置文件
 linux 一切都是文件。
 [root@ken ~]# vim /etc/samba/smb.conf
 [ken]
 public = yes
 path = /text
 read only = no
 等号前后都有空格第三步:创建共享路径
 [root@ken ~]# mkdir /test第四步;重启samba服务
 [root@ken ~]# systemctl restart smb第五步:添加访问用户(创建Samba用户)
 [root@ken ~]# useradd ken-u, –user=USER use username
 -a, –create create user[root@ken ~]# pdbedit -a -u ken
 new password:
 retype new password:
 Unix username: ken
 NT username:
 Account Flags: [U ]
 User SID: S-1-5-21-3452083566-2798555758-1495400394-1000
 Primary Group SID: S-1-5-21-3452083566-2798555758-1495400394-513
 Full Name:
 Home Directory: \ken\ken
 HomeDir Drive:
 Logon Script:
 Profile Path: \ken\ken\profile
 Domain: KEN
 Account desc:
 Workstations:
 Munged dial:
 Logon time: 0
 Logoff time: Wed, 06 Feb 2036 23:06:39 CST
 Kickoff time: Wed, 06 Feb 2036 23:06:39 CST
 Password last set: Mon, 20 May 2019 10:01:38 CST
 Password can change: Mon, 20 May 2019 10:01:38 CST
 Password must change: never
 Last bad password : 0
 Bad password count : 0
 Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF第六步:关闭防火墙
 [root@ken ~]# setenforce 0
 [root@ken ~]# systemctl stop firewalld第七步:windows访问
 win+r 调出运行框
 输入两个反斜线加上samba服务器的地址。输入你的用户名和密码即可第八步:验证Samba服务器;测试创建文件
 查看文件
 在window是否可以创建文件
 授予权限
 chmod 777 /test


再次验证

samba与ftp传输速度比较 samba和ftp_客户端_02

 

samba与ftp传输速度比较 samba和ftp_客户端_03

FTP服务概述

FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务。
FTP(File Transfer Protocol: 文件传输协议)作用: Internet 上用来传送文件的协议
今天的主角:vsftp
VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。
特点:
它是一个安全、高速、稳定的FTP服务器;
模式: C/S 模式
端口:
20(传数据)
21(传指令)

FTP工作流程(原理):

samba与ftp传输速度比较 samba和ftp_服务器_04

samba与ftp传输速度比较 samba和ftp_客户端_05

这里的主动和被动,是相对于的FTP server 端来判断的
如果server 去连接client 开放的端口,说明是主动的,相反,如果client去连接server开放的端口,则是被动的。

两种模式的比较:

(1)PORT(主动)模式模式只要开启服务器的21和20端口,而PASV(被动)模式需要开启服务器大于1024所有tcp端口和21端口。
(2)从网络安全的角度来看的话似乎ftp PORT模式更安全,而ftp PASV更不安全,那么为什么RFC要在ftp PORT基础再制定一个ftp PASV模式呢?其实RFC制定ftp PASV模式的主要目的是为了数据传输安全角度出发的,因为ftp port使用固定20端口进行传输数据,那么作为黑客很容使用sniffer等探嗅器抓取ftp数据,这样一来通过ftp PORT模式传输数据很容易被黑客窃取,因此使用PASV方式来架设ftp server是最安全绝佳方案。(默认是被动工作模式)

主动模式:
连接阶段:
首先通过21端口进行用户,密码及指令PORT传输,服务器端收到客户端建立请求之后去连接客户端的高位端口(1024以上的端口)
传输阶段:
服务器端使用自己的20端口去连接客户端的高位端口进行数据的传输,客户端给服务器端发送ack=1确认连接

被动模式:
连接阶段:
首先通过21端口进行用户,密码及指令PASV传输,服务器端收到客户端建立请求之后去连接客户端的高位端口(1024以上的端口)
传输阶段:
客户端使用自己的高位端口去连接服务器端开放的高位端口
服务器端回复ack=1的包进行确认

主动和被动模式的不同点:
1.发送指令的不同
主动模式发送PORT指令
被动模式发送PASV指令
2.开放的端口不不同
主动模式服务器端开放20端口
被动模式服务器端开放1024以上的高位随机端口
3.连接的对象不同
主动模式是服务器端主动连接客户端
被动模式服务器等待客户端进行连

部署安装FTP

下载vsftpd
[root@ken ~]# yum install vsftpd -y

配置匿名开放模式

匿名开放模式:是一种最不安全的认证模式,任何人都可以无需密码验证而直接登录到FTP服务器。

表11-2                                 可以向匿名用户开放的权限参数以及作用

| 参数 | 作用 |
| anonymous_enable=YES | 允许匿名访问模式 |
| anon_umask=022 | 匿名用户上传文件的umask值 |
| anon_upload_enable=YES | 允许匿名用户上传文件 |
| anon_mkdir_write_enable=YES | 允许匿名用户创建目录 |
| anon_other_write_enable=YES | 允许匿名用户修改目录名称或删除目录 |

部署vsftp服务器–匿名用户登录模式

第一步:下载vsftpd
 [root@ken ~]# yum install vsftpd -y第二步:编辑vsftpd文件
 [root@ken ~]# vim /etc/vsftpd/vsftpd.conf
 anonymous_enable=YES
 anon_upload_enable=YES
 anon_mkdir_write_enable=YES第三步:重启vsftpd
 [root@ken ~]# systemctl restart vsftpd第四步:windows访问
ftp://192.168.64.4/



samba与ftp传输速度比较 samba和ftp_客户端_06

samba与ftp传输速度比较 samba和ftp_samba与ftp传输速度比较_07

第五步:进行操作验证
共享出来的pub目录路径:

[root@ken ~]# find / -name “pub”
 /var/ftp/pub第六步:增加权限
 [root@ken ~]# chmod o+w /var/ftp/pub/第七步:改名和删掉文件操作
 默认是禁止的、
 anon_other_write_enable=YES第八步:重启vsftpd
 [root@ken ~]# systemctl restart vsftpd

部署vsftp服务器–本地用户登录模式

本地用户模式使用的权限参数以及作用

| 参数 | 作用 |
 | anonymous_enable=NO | 禁止匿名访问模式 |
 | local_enable=YES | 允许本地用户模式 |
 | write_enable=YES | 设置可写权限 |
 | local_umask=022 | 本地用户模式创建文件的umask值 |
 | userlist_deny=YES | 启用“禁止用户名单”,名单文件为ftpusers和user_list |
 | userlist_enable=YES | 开启用户作用名单文件功能 |第一步:编辑配置文件
 anonymous_enable=NO
 第二步:重启服务vsftpd
 [root@ken ~]# systemctl restart vsftpd第三步:创建一个普通用户
 [[root@ken ~]# useradd kenken
 [root@ken ~]# passwd kenken
 Changing password for user kenken.
 New password:
 BAD PASSWORD: The password is shorter than 8 characters
 Retype new password:
 passwd: all authentication tokens updated successfully

第四步:windows访问;输入创建的用户和密码

samba与ftp传输速度比较 samba和ftp_samba与ftp传输速度比较_08

ls

samba与ftp传输速度比较 samba和ftp_服务器端_09

第五步:验证操作

samba与ftp传输速度比较 samba和ftp_服务器_10

文件被上传到了用户家目录下面
 root@ken ~]# ls /home/kenken
 注意:
 文件都会被存放在当前登录的用户家目录下面systemctl常用操作
以samba为列
 systemctl start smb       #启动smb服务
 systemctl restart smb   #重启smb服务
 systemctl stop smb       #停止smb服务
 systemctl status smb    #查看smb服务状态
 systemctl reload smb    #平滑重启smb
 systemctl enable smb   #开机自启smb服务
 systemctl disable smb   #开机不启动smb服务sshd服务讲解
SSHD服务
介绍:SSH 协议:安全外壳协议。为 Secure Shell 的缩写。SSH 为建立在应用层和传输层基础上的安全协议。
 默认端口22
 作用
 sshd服务使用SSH协议可以用来进行远程控制, 或在计算机之间传送文件
 相比较之前用telnet方式来传输文件要安全很多,因为telnet使用明文传输,sshd是加密传输。SSH服务安装
 这里用yum安装(系统已经默认安装并开机自启)
 [root@ken ~]# yum -y install openssh openssh-clients openssh-server openssh-askpass
 SSH 配置文件
 SH 常用配置文件有两个/etc/ssh/ssh_config 和/etc/sshd_config。
 ssh_config 为客户端配置文件
 sshd_config 为服务器端配置文件解决xshell连接服务器慢的问题
 vim /etc/ssh/sshd_config
 UseDNS no
 修改完之后重启sshd
 [root@ken ~]# systemctl restart sshd几个隐藏文件
主节点:即执行ssh-keygen的主机
 [root@ken ~]# ls .ssh/ id_rsa id_rsa.pub known_hosts
 id_rsa: 私钥(执行ssh-keygen生成)
 id_rsa.pub: 公钥(执行ssh-keygen生成)
 known_hosts: 主机信息
 从节点:接收秘钥的主机
 [root@ken-node2 ~]# ls .ssh/ authorized_keys
 authorized_keys文件内容和主节点的 id_rsa.pub文件内容一致,即保存了公钥信息。远程连接线上服务器
第一步:ssh连接(确保能ping通)
 方法一、
 [root@ken ~]# ssh root@152.136.127.116
 方法二、
 [root@ken ~]# ssh 152.136.127.116
 第二步:退出远程服务器
 [root@ken ~]# exit使用ssh免密登录远程主机
1、ssh [远程主机用户名] @[远程服务器主机名或IP地址]
 如果用root进程登录远程主
 [root@ken ssh]# ssh 192.168.100.156
 第一次登录服务器时系统没有保存远程主机的信息,为了确认该主机身份会提示用户是否继续连
 接,输入yes 后登录,这时系统会将远程服务器信息写入用户主目录下的$HOME/.ssh/known_hosts 文件中,下次再进行登录时因为保存有该主机信息就不会再提示了
 [root@ken ~]# cat /root/.ssh/known_hosts 192.168.100.155 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA7B2ow9G9mtjXOdFf0OaRGeJDgAjENY99fHd4Z2R1J7rJH0qpcCVGnIbyAGlZml6XYoUZ8yJunOgA5wh7wKCRUqlT2Xwo5LQ7GH21Q2oiDkeiGFbn0woshZJwsCxpBbcmfzT63RXdHKlBny5pC1rINmlzOnXzvSk/1Wxc8eNn8fMMbP4u2yn7sp9U27Gm5iHkGcIoyPqhP6G5oQ/LoRQFCzhiPQXFf8a8twYDy4jVBt1FJpFJiHBZdiXVlujTCucr0TFXw8UHt9Dq7ZRZrqd74ASz8f5Kp7XdagumpDgb1/DqAY6m/NLdT9qhG4TnhJwfIcjv+EI30raVgcMEYweM9w==
 RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但是想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。第一步:生成秘钥对
[root@ken ~]# ssh-keygen
 Generating public/private rsa key pair.
 Enter file in which to save the key (/root/.ssh/id_rsa.pub): Enter passphrase (empty for no passphrase):
 Enter same passphrase again:
 Your identification has been saved in /root/.ssh/id_rsa.
 Your public key has been saved in /root/.ssh/id_rsa.pub.
 The key fingerprint is:
 SHA256:yKa8IEujsA3qIAG/LQtz7l2+//a/OhZW1G6sWgSFdho root@ken
 The key’s randomart image is:
 +—[RSA 2048]—-+
 | o.. |
 | E o .|
 |. . * o |
 |.. . . . o +|
 |. . + S o o |
 | . + o o o |
 |Oo= + . . + |
 |B@.= + . + |
 |*o= o oo.o.oo+o. |
 +—-[SHA256]—–+第二步:查看生成的秘钥
 [root@ken ~]# ls .ssh/
 id_rsa id_rsa.pub known_hosts
 id_rsa: 私钥(执行ssh-keygen生成)
 id_rsa.pub: 公钥(执行ssh-keygen生成)
 known_hosts: 主机信息第三步:传输公钥
 [root@ken ~]# ssh-copy-id root@152.136.127.116
 /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: “/root/.ssh/id_rsa.pub”
 /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
 /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed — if you are prompted now it is to install the new keys
 root@152.136.127.116’s password: #输入远程服务器密码
 Number of key(s) added: 1
 Now try logging into the machine, with: “ssh ‘root@152.136.127.116′”
 and check to make sure that only the key(s) you wanted were added.第四步:免密登录
 [root@ken ~]# ssh ‘root@152.136.127.116’第五步:退出远程服务器
 [root@ken ~]# exit
 logout
 Connection to 152.136.127.116 closed.