linux配置ssh+rsync

时间:2022-03-24 02:10:44
ssh  远程登录
sftp    文件共享 类似ftp  ssh  secure file transfer client
scp    文件共享 类似cp
 
ssh配置文件
/etc/ssh/sshd_config
#PermitRootLogin yes    改成no 禁止root直接登录
#Port 22    改变ssh的默认端口号   要打开注释
重启ssh服务
service sshd restart
 
ssh
登录  ssh  gwyy@192.168.111.130  然后输入密码就好了
-2  ssh2协议   建议用ssh2 安全性会更好  ssh -2 
-p  指定非标准端口   ssh -2 -p2222 gwyy@192.168.11.130
 
sftp
也可以直接在命令行用sftp连接这台主机  sftp   gwyy@192.168.11.130
 
scp  拷贝远程文件 加密传输
scp  本地文件 用户名@远程主机地址:远程主机目录 scp /etc/inittab root@192.168.111.130:/gwyy
scp -r 本地目录 用户名@远程主机地址:远程主机目录  -r拷贝文件
从远程主机拷贝文件到本地
scp   用户名@远程主机地址:远程主机文件  本地目录
scp -r  用户名@远程主机地址:远程目录    本地目录
常用选项
-p  保持文件属性  比如时间属性
-r  复制目录 
-P  指定端口号
 
例子 可以用crontab + scp做远程备份
crontab -e 
0 2 * * 0 /usr/bin/scp -r web@192.168.1.1:/web  /backup/web  周一到周六做增量备份
 
 
生成  ssh密钥  让2台主机不需要密码 
第一台主机 root 生成公钥 拷贝到 第二台主机 gwyy 家目录里面 这样 第一台主机root连接第二台主机gwyy不需要密码
ssh-keygen -t rsa 生成公钥
scp /root/.ssh/id_rsa.pub gwyy@192.168.111.130 /home/gwyy  把公钥拷贝到另一台主机
 
第二台主机 账号登陆 手动创建 .ssh目录  mkdir .ssh  是隐藏的 要用 ls -a 查看
cat id_rsa.pub >> .ssh/authorized_keys  然后把复制来的文件 改名拷贝到.ssh目录
chmod   700 .ssh   改变权限 这个目录   只有普通用户有权限
chmod 600    .ssh/authorized_keys  权限必须是600 读写权限 
 
 
 
rsync 应用  
方便的增量备份  可以使用ssh加密通道 可以镜像保存整个目录和文件系统  保持文件的权限时间软连接 等等 传输效率高
 
启用服务
编辑  /etc/xinetd.d/rsync
设置 disable = on  启用  默认不启用
重启xinetd进程  service xinetd restart 
例子  周1到周6做一次备份 
crontab -e 
0 2 * * 1-6 /usr/bin/rsync -arHz --delete gwyy@192.168.111.130:/web  /backup  把另一台主机的web目录拷贝到本机的back下面
 
-a  保持文件属性
-r   子目录递归处理
-H 保持文件硬链接
-z  备份文件传输时候压缩处理
--progress 在传输时候显示传输过程
--delete  删除目标备份没有的文件
-e ssh  使用ssh加密隧道传输

http://itindex.net/detail/45060-linux-ssh-rsync