• SAMBA服务和FTP服务讲解


    rz sz window和Linux之间小文件的传输

    yum install lrzsz -y

    rz;window文件传送到linux中

    sz:把Linux文件传送到window

    防火墙:

    立即关闭但是重启系统失效:selinux-->setenforce 0/getenforce

    永久关闭但是重启系统生效:vim /etc/sysconfig/selinux

    clip_image002

    立即关闭防火墙:systemctl stop firewalld

    永久关闭防火墙:systemctl disable firewalld

    1.samba服务Linux与windows之间的共享

    Smb主要作为网络通信协议;

    Smb是基于cs架构;

    完成Linux与windows之间的共享;linux与linux之间共享用NFS

    第一步:安装samba

    [root@ken ~]# yum install samba -y

    第二步:编辑配置文件

    [root@ken ~]# vim /etc/samba/smb.conf

    ...

    [ken]

    path = /ken #共享目录

    read only = no

    public = yes

    ...

    第三步:添加访问用户

    [root@ken ~]# useradd ken

    [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-2955866158-395382928-516355751-1000

    Primary Group SID: S-1-5-21-2955866158-395382928-516355751-513

    Full Name:

    Home Directory: \kenken

    HomeDir Drive:

    Logon Script:

    Profile Path: \kenkenprofile

    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: Thu, 28 Feb 2019 19:28:50 CST

    Password can change: Thu, 28 Feb 2019 19:28:50 CST

    Password must change: never

    Last bad password : 0

    Bad password count : 0

    Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

    第四步:创建共享目录

    [root@ken ~]# mkdir /ken

    第五步:关闭防火墙

    [root@ken ~]# setenforce 0

    [root@ken ~]# systemctl stop firewalld

    查看防火墙状态:getenforce permissive:关闭

    第六步:启动samba服务

    [root@ken ~]# systemctl restart smb

    第七步:windows访问

    输入两个反斜线加上samba服务器的地址。输入你的用户名和密码即可

    clip_image003

    第八步:测试创建文件

    clip_image004

    2.FTP服务概述

    FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务。

    FTP(File Transfer Protocol: 文件传输协议)作用: Internet 上用来传送文件的协议

    VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。

    特点:

    它是一个安全、高速、稳定的FTP服务器;

    模式: C/S 模式

    端口:

    20 (传数据)

    21(传指令)

    3.FTP工作流程(原理)

    工作流程(原理):主动被动模式

    主动模式:服务器主动连接客户端传输

    被动模式:服务器等待客户端的连接

    clip_image001[1] 主动模式过程:

    客户端通过21端口,发送密码,用户port指令,服务器端相应客户端服务器端使用20端口主动连接客户端的随机高位端口,客户端要返回确认,开始传输数据。

    clip_image005

    clip_image001[2] 被动模式过程:

    客户端通过21端口,发送密码,用户pasv指令,客户端服务器开启高位端口主动连接服务器端的随机高位端口,客户端要返回确认,开始传输数据。

    clip_image006

    两种模式的比较:

    (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是最安全绝佳方案。(默认是被动工作模式)

    4.部署安装FTP

    下载vsftpd

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

    1)配置匿名开放模式

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

    参数

    作用

    anonymous_enable=YES

    允许匿名访问模式

    anon_umask=022

    匿名用户上传文件的umask值

    anon_upload_enable=YES

    允许匿名用户上传文件

    anon_mkdir_write_enable=YES

    允许匿名用户创建目录

    anon_other_write_enable=YES

    允许匿名用户修改目录名称或删除目录

    第一步:编辑配置文件

    [root@localhost ~]# vim /etc/vsftpd/vsftpd.conf

    anon_upload_enable=YES

    anon_mkdir_write_enable=YES

    第二步:启动ftp

    [root@ken ~]# systemctl restart vsftpd

    第三步:windows访问

    clip_image007

    第四步:写入文件进行测试

    发现没有权限

    clip_image008

    第五步:更改属主

    [root@localhost ~]# find / -name pub

    /var/ftp/pub

    [root@localhost ~]# chown -R ftp: /var/ftp/pub

    [root@localhost ~]# ls -ld /var/ftp/pub

    drwxr-xr-x. 2 ftp ftp 6 10月 31 03:45 /var/ftp/pub

    第六步:再次创建文件

    创建成功

    clip_image009

    2)配置本地用户模式

    参数

    作用

    anonymous_enable=NO

    禁止匿名访问模式

    local_enable=YES

    允许本地用户模式

    write_enable=YES

    设置可写权限

    local_umask=022

    本地用户模式创建文件的umask值

    userlist_deny=YES

    启用“禁止用户名单”,名单文件为ftpusers和user_list

    userlist_enable=YES

    开启用户作用名单文件功能

    第一步:编辑配置文件

    修改如下四处即可

    [root@localhost ~]# vim /etc/vsftpd/vsftpd.conf

    anonymous_enable=NO

    local_enable=YES

    write_enable=YES

    第二步:重启服务

    [root@ken ~]# systemctl restart vsftpd

    第三步:创建一个普通用户

    [root@localhost ~]# useradd a

    [root@localhost ~]# id a

    uid=1000(a) gid=1000(a) 组=1000(a)

    [root@localhost ~]# passwd a

    Changing password for user ken.

    New password:

    BAD PASSWORD: The password is shorter than 8 characters

    Retype new password:

    passwd: all authentication tokens updated successfully.

    第四步:windows访问

    输入创建的用户和密码

    clip_image010

    第五步:创建文件进行测试

    clip_image011

    5.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服务

    6.sshd服务讲解

    SSHD服务

    介绍:SSH 协议:安全外壳协议。为 Secure Shell 的缩写。SSH 为建立在应用层和传输层基础上的安全协议。

    默认端口22

    作用

    sshd服务使用SSH协议可以用来进行远程控制, 或在计算机之间传送文件

    相比较之前用telnet方式来传输文件要安全很多,因为telnet使用明文传输,是加密传输。

    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 为服务器端配置文件

    1)几个隐藏文件

    主节点:即执行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文件内容一致,即保存了公钥信息。

    2)使用ssh免密登录远程主机)

    ssh [远程主机用户名] @[远程服务器主机名或IP地址]

    如果用root进程登录远程主

    [root@ken ssh]# ssh 192.168.100.156

    -p

    第一次登录服务器时系统没有保存远程主机的信息,为了确认该主机身份会提示用户是否继续连

    接,输入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算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但是想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。

    第一步:生成密钥对

    输入ssh-keygen之后一直回车即可,生成一次即可,无需多次生成该密钥,否则会提示你是否覆盖选项!

    [root@ken ~]# ssh-keygen

    Generating public/private rsa key pair.

    Enter file in which to save the key (/root/.ssh/id_rsa):

    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:uzrFboudR48UdBgDndOqvbCLuownTPF5P1vUQX0WbU4 root@ken

    The key's randomart image is:

    +---[RSA 2048]----+

    | .oo=.. .o|

    | *oo . E|

    | . +. * |

    | . o. . .|

    | o . .So... |

    | . o . =o+ |

    | o . +.=.+ |

    | oo. .+*++ . |

    | .o+o++B* |

    +----[SHA256]-----+

    第二步:发送密钥

    使用ssh-copy-id加上ip地址即可传送密钥至想要登录的主机,需要输入一次客户端的密码

    [root@ken ~]# ssh-copy-id 192.168.163.128

    /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"

    The authenticity of host '192.168.163.128 (192.168.163.128)' can't be established.

    ECDSA key fingerprint is SHA256:kV6tl/qBm50DhXUc0Q0bnavLwsUrYHT6VrdcivrsHyo.

    ECDSA key fingerprint is MD5:55:4c:2d:86:64:d4:9d:4b:eb:0e:b2:68:38:d5:dc:8c.

    Are you sure you want to continue connecting (yes/no)? yes

    /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@192.168.163.128's password:

    Number of key(s) added: 1

    Now try logging into the machine, with: "ssh '192.168.163.128'"

    and check to make sure that only the key(s) you wanted were added.

    第三部:登陆节点

    在发送完密钥之后即可不需要输入密码即可访问节点

    如果节点不是默认的22端口,还需要机上小写 的p选项指定端口

    [root@ken ~]# ssh 192.168.163.128

    Last login: Mon Mar 25 11:24:43 2019 from 192.168.163.130

    ssh 目标ip 命令

    在ip执行命令

  • 相关阅读:
    spring属性注入
    spring的bean标签属性
    spring三种实例化bean的方式
    测试环境部署
    sql server将字符串转换为 uniqueidentifier 时失败
    mybatis parametertype 多个参数
    ORACLE-023:令人烦恼的 ora-01722 无效数字
    PostMan使用教程
    sqlserver复制表数据到另一个表
    to_number()函数的用法
  • 原文地址:https://www.cnblogs.com/liangzb310/p/11025115.html
Copyright © 2020-2023  润新知