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