ssh服务


===SSH服务===
软件包: openssh-server
端口:  22/tcp
配置文件:/etc/ssh/sshd_config 服务端配置文件
         /etc/ssh/ssh_config  客户端配置文件

[root@station115 ~]# netstat -tnlp |grep :22   //查看那22端口的工作状态
[root@station115 ~]# ps aux |grep sshd
root      2729  0.0  0.0   7224   776 ?        Ss   07:07   0:00 /usr/sbin/sshd

# ssh 192.168.2.104          //以当前用户
# ssh root@192.168.2.104     //以指定用户
# ssh -X 192.168.2.104          //可以执行远程主机的图形 oclock


# ssh 192.168.2.104 'hostname'  //在远程主机上执行shell命令,这种方式没有连接
# ssh 192.168.2.104 date;date     //先显示远程的时间,再显示本机时间
# ssh 192.168.2.104 'passwd root'
# echo "123" |passwd root --stdin     //改本机root密码   --stdin标准输入,前面的输入作为后面修改密码的输入了
# ssh 192.168.2.104 'echo 123 |passwd root --stdin'  在远程主机上执行修改密码

rsync:增量同步 ,他复制的时候能够将源文件的权限也能原封不动的复制过去
rsync -a  源文件  目标    参数a 表示以归档模式(包括属性权限,文件夹子目录等)
这个命令的好处是:他只同步有差异的部分作同步,都有的就不会改了,不像cp那样,管你有没有,都重新复制
# rsync fsck.pdf /111.pdf
# rsync -a  /mnt/test1 192.168.2.104:/root      将/mnt/test1目录和/mnt/test1目录下的所有文件都同步到。。
# rsync -a  /mnt/test1/ 192.168.2.104:/root     同步/mnt/test1目录下的所有文件,这种同步没有将源文件里删除的文件在目标文件里删除
# rsync -va --delete /mnt/test1 192.168.2.104:/ 同步所有的修改,包括删除源 ,真正的绝对同步

scp:
# scp -r jfsutils-1.1.15.tar.gz 192.168.2.104:/  这个就是拷贝了

sftp
# sftp 192.168.2.253           (这个同scp 一样,无需假设服务端,用ssh协议传输)

====配置
/etc/ssh/sshd_config 服务端配置文件
man sshd_config
vim /etc/ssh/sshd_config
UseDNS no     不使用DNS解析
GSSAPIAuthentication no    无验证   //authentication   验证
PermitRootLogin  no      禁用root远程登录
AllowUsers  jack alice   只允许jack和alice远程登录
Port  22222          修改端口范围 1 - 65535  尽量有理由的改动,慎用

# service sshd restart
# ssh tom@192.168.2.104 -p 22222     登录时-p指定端口

===使用公钥认证====
AuthorizedKeysFile     .ssh/authorized_keys
教学案例:
1. 客户端生成公钥和私钥,例如以root用户
[root@station115 ~]# ssh-keygen  //敲完这个命令一顿回车就可以了
[root@station115 ~]# ls .ssh/
id_rsa (私钥) id_rsa.pub(公钥)  known_hosts
2. 将公钥传到所需登录服务器(对应的用户,特定的位置)
[root@station115 ~]#  ssh-copy-id  -i 192.168.2.104        (ssh-copy-id 自动将公钥拷贝到对方相应用户的家目录的.ssh目录下)


练习题:工程环境
三个节点使用用户oracle或grid相互登录,使用公钥认证
192.168.2.115     rac1    //可以在/etc/hosts文件里将这些写进去,方便解析
192.168.2.123     rac2
192.168.2.125     rac3

1. 在三个节点上都建立相同的用户,设置相同的密码
# useradd oracle
# useradd grid
# passwd oracle
# passwd grid

2. 做grid用户的公钥认证
   a. rac1(先在随意一个节点上作)
   [root@station115 ~]# su - grid
   [grid@station115 ~]$ ssh-keygen
   [grid@station115 ~]$ cd .ssh/
   [grid@station115 .ssh]$ ls
   id_rsa  id_rsa.pub
   [grid@station115 .ssh]$ mv id_rsa.pub authorized_keys    //将公钥改名成authorized_keys
   [grid@station115 .ssh]$ ls
   authorized_keys  id_rsa

   b. 复制~/.ssh目录到对方对应的目录中
   [grid@station115 .ssh]$ rsync -a ~grid/.ssh 192.168.2.123:~grid/   所有的都同步
   [grid@station115 .ssh]$ rsync -a ~grid/.ssh 192.168.2.125:~grid/
=========================
批量给服务器改密码脚本:

#!/bin/bash
#基于公钥认证的基础上批量修改主机密码
#passwd=123
read -p "请输入本次此修改的密码:"  passwd
for i in 'cat /root/hosts.txt'
do
     ssh $i "echo $passwd |passwd root --stdin" &>/dev/null
     if     [ $? = 0 ];then
          echo "`date +%F` $i 密码修改成功  "     >>     /root/modify_log.txt
     else
          echo "`date +%F` $i 密码修改失败 "      >>     /root/modify_log_error.txt    
     if
done
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值