zoukankan      html  css  js  c++  java
  • Linux 学习笔记_12_文件共享服务_4_SSH

    SSH文件共享服务



    一、ssh远程登录【一般的Linux系统都会默认安装并启用】

    1Linux上远程命令行登录:ssh 用户名@远程主机IP地址

    常用选项:

    -2表示SSH2,强制使用第二代SSH协议,建议使用

    -p端口号

    示例:ssh sam@192.168.139.1

    大多数SSH登录的两个规则:1)禁止空密码用户登录;2)禁止root用户登录

    2SSH配置文件:/etc/ssh/ssh_config

    选项1PermitRootLogin yes           #添加该行,或者将该行前的#去掉,则会限制root用户登录

    选项2Port 10022                          #设定SSH的端口号为10022,建议修改此处

    设置成功后:services shd restart     #重新加载配置文件以生效

    此时登录:ssh -2 -p 10022 sam@192.168.139.1

    Windows上有客户端SecureCRT


    二、sftp文件共享(类似于ftp

    Linux命令行登录:sftp pam@192.168.139.1     #登录之后与ftp非常相像

    Windows上有SSHSecure Transfer Client


    三、scp文件共享(类似于cp

    1、本机拷贝文件到远程主机【加密传输】

    scp  本地文件  用户名@远程主机地址:远程主机目标目录

    scp  -r 本地目录  用户名@远程主机地址:远程主机目标目录

    e.g. scp   /etc/inittab  penny@192.168.139.1:/home/penny

    scp  -r   /etc penny@192.168.139.1:/home/penny


    2、从远程主机拷贝文件到本地

    scp  用户名@远程主机地址:远程主机文件  本地目录

    scp  -r 用户名@远程主机地址:远程主机目录  本地目录



    3、常用选项

    -r               #复制目录

    -p              #保持文件原有属性

    -P(大写)    #指定端口号



    四、加密与解密

    1、对称密钥加密

    说明:加密与解密使用同一密钥

    优点:速度快

    缺点:密钥本身需要交换



    2、非对称密钥加密

    说明:又称为公开密钥加密,使用时生成两个密钥,一个公开存放,为公钥;一个私人持有,为私钥。用户用其中一个密钥加密的数据只有用另一个密钥才能解开

    优点:安全性好

    缺点:速度慢


    所以加密时,通常是同时使用对称与非对称两种加密结合使用


    3、示例

    公钥加密 --->私钥解密 ---加密文件

    私钥加密 --->公钥解密 ---数字证书【用私钥标记一下,然后用公钥检验】


    4、建立信任主机

    主机一(本机)

    主机二(192.168.16.155

    建立密钥对

    获得主机一公钥,并生成认证密钥

    ssh-keygen -t rsa #直接回车就可以了

    该公钥默认保存在当前用户家目录的.ssh

    catid_rsa.pub >> .ssh/authorized_keys #名称固定,最好用追加符号!

    生成公钥id_rsa.pub

    chmod 600 .ssh/authorized_key


    chmod 700 .ssh【有些系统现在不需要这两步】

    说明:

    1、此时,主机一登录主机二将不用再使用密码

    如:scp -rp penny@192.168.16.155/webadmin /backup

    ssh penny@192.168.16.155                  #执行这两条命令将不再需要密码

    2、信任主机关系是跟用户是相关的,如root生成的密钥对,只有root可以用,用zhansan登录的时候也是需要使用密码的

    3、在主机二上,如果没有.ssh目录的话,需要手工创建一下


    五、rsync应用

    特点:

    1)、方便增量备份实现

    2)、可镜像保存整个目录树和文件系统

    3)、保持文件的权限,时间,软硬链接等

    4)、文件传输效率高

    5)、可以使用SSH加密通道


    1、启动rsync

    rpm  -qf   /etc/xinetd.d/rsync     #查看rsync是否已经安装,但是大部分Linux是默认安装的

    编辑/etc/xinetd.d/rsync文件:添加或修改选项 disable=no

    service xinetd restart                #xinetd服务重新启动一下

    附:sync  命令:将内存数据同步到硬盘上


    2、使用rsync

    示例1 rsync  -arHz  --progress  --delete webadmin@192.168.16.155:/website /backup

    #备份web服务器端的目录到本地/backup


    示例2rsync -arHz --progress --delete /script samlee@192.168.16.155:/home/samlee

    #上传/script目录到用户samlee的宿主目录下


    3、选项说明

    -a                     #all:保持文件属性

    -r                     #递归:子目录递归处理

    -H                   #保持文件硬链接

    -z                   #备份文件传输时压缩处理,以优化备份速度,建议加上

    --progress      #在传输时显示整个传输过程,在自动化执行时就不用加了

    --delete         #删除目标备份没有的文件,必须加

    -e ssh           #使用ssh加密隧道传输,进行加密处理

    rsync -arHz --progress –delete -e ssh /scriptsamlee@192.168.16.155:/home/samlee


    六、综合实例分析

    服务器A/webadmin 192.168.16.155 penny ---> 备份服务器Blocalhostroot

    &需要提前做好信任主机关系

    a)在备份服务器B生成密钥,将公钥拷贝到服务器A

    b)在服务器A上生成认证密钥


    1)每周日做一次完全备份:crontab -e

    0 2 * * 0 /usr/bin/scp -rp webadmin@192.168.16.155:/webadmin/backup /webadmin_$(date +%F)

    2)每周一~周六做一次增量备份:crontab -e

    0 2 * * 1-6 /usr/bin/rsync -arHz --delete penny@192.168.16.155:/website  /backup

  • 相关阅读:
    登录注册页面切换
    LINUX系统日常使用命令
    find命令详解
    ssh命令详解
    tar命令详解
    route命令详解
    uname命令详解
    ps命令详解
    df命令详解
    virsh命令详解
  • 原文地址:https://www.cnblogs.com/itrena/p/5927062.html
Copyright © 2011-2022 走看看