科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网安全频道Rsync+SSH---Server自动异地备援加密

Rsync+SSH---Server自动异地备援加密

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

这次主要分成三个部份...单向 Trusted SSH Authorized...Rsync...Crontab....姑且不论传输速度为何...以及无时差的异地备援。

作者:ADJ网络实验室 来源:ADJ网络实验室 2008年10月15日

关键字: 加密解密

  • 评论
  • 分享微博
  • 分享邮件

  一.前言

  自从911事件之后...异地备援这个名称就常听人提起...不过就是满少看到大家在讨论... 刚好这次因为有需要...不得不研究这个东西...顺便看看大家都是怎样实作异地备援的..底下是个人的一点点心得...

  这次主要分成三个部份...单向 Trusted SSH Authorized...Rsync...Crontab....姑且不论传输速度为何...以及无时差的异地备援...相信这样的Solutions应该可以满足一般人的需求吧...

  二.准备

  测试系统: Red Hat Linux 7.3 to Red Hat 7.3 ...Local 端需要启动 Rsync...套件openssh-3.4p1-1

  ** 假设: A (10.0.0.1) 要对 B (192.168.0.1) 做异地备援

  PS:角色定位要明确...当然您要巅倒的来做也行...

  三.开始实作

  1.完成单向Trusted SSH Authorized﹕

  我要 A (10.0.0.1) 要对 B (192.168.0.1) 做异地备援 ...所以我针对 A 让它使用SSH?

  B到 B 时...不需要输入密码...User 是 Root...SSH Version2的版本..首先要先在A(10.0.0.1)产生public/private dsa key pair..

  [root@mondeo home]# cd /root/.ssh/

  [root@mondeo .ssh]# ssh-keygen -d

  Generating public/private dsa key pair.

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

  Enter passphrase (empty for no passphrase): <-- 此处不打passphrase..下次才不会询问password

  Enter same passphrase again:

  Your identification has been saved in /root/.ssh/id_dsa.

  Your public key has been saved in /root/.ssh/id_dsa.pub.

  The key fingerprint is:

  11:22:33:44:55:66:77:88:99:00:11:22:33:44:55:66 root@mondeo.adj.idv.tw

  [root@mondeo .ssh]#

  这时会在系统下看到两个档案...id_dsa与id_dsa.pub 现在要把id_dsa.pub丢到192.168.0.1 并且更名为 authorized_keys2

  [root@mondeo .ssh]# scp id_dsa.pub 192.168.0.1:/root/.ssh/authorized_keys2

  root@192.168.0.1'spassword:

  id_dsa.pub 100% |*************************************************************

  **************| 612 00:00

  [root@mondeo .ssh]#

  现在您可以执行ssh 192.168.0.1 看看能否登入而不需要输入密码...

  2.使用rsync 做Remote sync﹕

  rsync特性简介 :

  rsync是unix-like系统下的数据镜像备份工具,从命名上就可以看出来了remote sync。

  它的特性如下:

  1、可以镜像保存整个目录树和文件系统。

  2、可以很容易做到保持原来文件的权限、时间等等。

  3、无须特殊权限即可安装。

  4、优化的流程,文件传输效率高。

  5、可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接。

  6、支持匿名传输。

  首先要先对B(192.168.0.1)把Rsync的Server on起来...

  [root@linux /]#chkconfig --list rsync

  rsync off

  [root@linux /]#chkconfig rsync on

  现在我先在A(10.0.0.1)上建一个 Backup directory...然后对B(192.168.0.1)的mysql跟

  html的目录做异地备援...偶写一个简单的script如下:

  [root@mondeo /]# mkdir backup

  [root@mondeo backup]#vi sync

  rsync -avlR --delete -e ssh 192.168.0.1:/var/lib/mysql /backup/

  rsync -avlR --delete -e ssh 192.168.0.1:/var/www/html /backup/

  [root@mondeo backup]#chmod 700 sync

  参数意义如下﹕

  -a, --archive

  It is a quick way of saying you want recursion and want to preserve almost everything.

  -v, --verbose

  This option increases the amount of information you are given during the transfer.

  -l, --links

  When symlinks are encountered, recreate the symlink on the destination.

  -R, --relative

  Use relative paths. 保留相对路径...才不会让子目录跟 parent 挤在同一层...

  --delete

  是指如果Server端删除了一文件,那客户端也相应把这一文件删除,保持真正的一致。

  -e ssh

  建立起加密的连接。

  参数的使用因人而异...您可以man rsync来使用更多的参数...

  测试看看:

  [root@mondeo backup]# ./sync

  receiving file list ... done...donewrote 16 bytes read 107 bytes 82.00

  bytes/sectotal size is 0 speedup is 0.00receiving file list ...

  done...donewrote 16 bytes read 921 bytes 624.67 bytes/sectotal size is

  308331 speedup is 329.06[root@mondeo backup]#

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章