这篇文章写SSH配置思路很清楚,虽然还没有试,但是还是被这清晰的思路震惊了。


自己问了自己介个问题,记录一下答案。


1,为什么新建用户?


ssh为了安全期间不建议使用Root用户,所以使用root用户就比较麻烦。


2,为什么要修改配置文件?


修改的意思是打开SSH的公钥认证。


3,为什么要修改用户名?


因为在集群中同样的服务器用户名大都会相同,登陆到不同的机器效果就不太容易区分。


4,最好关闭关闭防火墙,不然系统经常会出现各种异常。




CentOS7.2配置SSH


centos7 创建ssh账号 centos7新建ssh用户_IPV6

 

作者  yangx1  关注

2016.08.22 14:27*  字数 488  阅读 758 评论 0 喜欢 0


1.环境

Linux操作系统:CentOS 7.2 JDK:jdk-7u79-linux-x64 虚拟机:VMware 12

2.创建用户

su root # 以 root 用户登录
useradd -m hadoop -s /bin/bash # 创建新用户hadoop
passwd hadoop #修改密码
vi sudo #hadoop 用户增加管理员权限,方便部署,避免一些对新手来说比较棘手的权限问题

hadoop ALL=(ALL) ALL






最后ESC :wq保存

3.配置网络

su hadoop #切换为hadoop用户
  cd /etc/sysconfig/network-scripts
  ls
  ifcfg-eno16777728  ifdown-ppp       ifup-ib      ifup-Team
  ifcfg-lo           ifdown-routes    ifup-ippp    ifup-TeamPort
  ...

我的网卡是ifcfg-eno16777728,可能有所不同
可以使用ifconfig确定自己的网卡




vi ifcfg-eno16777728配置IP

我使用的是VMware NAT方式 (注:默认网关是GATEWAY="192.168.92.2")

TYPE="Ethernet"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
NAME="eno16777728"
UUID="3b3d653d-81c2-44e6-afb2-b678f111a783"
DEVICE="eno16777728"
ONBOOT="yes"
IPADDR="192.168.92.101"
PREFIX="24"
GATEWAY="192.168.92.2"
DNS1="114.114.114.114"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
IPV6_PRIVACY="no"

ESC :wq保存,重启

sudo /etc/init.d/network restart

修改hosts文件,增加下面行

vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.92.101 master
192.168.92.102 slave2
192.168.92.103 salve3




将虚拟机克隆一下(注:创建完整克隆),重复以上步骤配置一下(我配的ip:192.168.92.101、192.168.92.102、192.168.92.103)

4.安装SSH、配置SSH无密码登陆

集群、单节点模式都需要用到 SSH 登陆(类似于远程登陆,你可以登录某台 Linux 主机,并且在上面运行命令),一般情况下,CentOS 默认已安装了 SSH client、SSH server,打开终端执行如下命令进行检验:

rpm -qa | grep ssh





若需要安装,则可以通过 yum 进行安装

sudo yum install openssh-clients
sudo yum install openssh-server

此时会有如下提示(SSH首次登陆提示),输入 yes 。
尝试登录

ssh localhost


ssh 登陆是有时会出错可以参考解决


但这样登陆是需要每次输入密码的,我们需要配置成SSH无密码登陆比较方便。

exit                           # 退出刚才的 ssh localhost
cd ~/.ssh/                     # 若没有该目录,请先执行一次ssh localhost
ssh-keygen -t rsa              # 会有提示,都按回车就可以
cat id_rsa.pub >> authorized_keys  # 加入授权
chmod 600 ./authorized_keys    # 修改文件权限

此时再用 ssh localhost(配置成功之后有时不一定能成功登录,最好重启一下ssh服务)

在登陆设置的过程中如果出现问题,最好通过tailf /var/log/secure命令查看ssh登陆过程中的错误日志,便于定位错误和解决问题(这个方法比较管用)。

命令,无需输入密码就可以直接登录了(每台虚拟机上重复以上步骤)

这只是本机访问,不同电脑之间登录如下:

sudo vi  /etc/ssh/sshd_config





大概在98行 把#去掉,ESC:wq,再执行下面命令

sudo service sshd restart

然后把各自虚拟机上生成的id_rsa.pub拷贝到其他电脑上

#192.168.92.101
hadoop@192.168.92.101:scp ~/.ssh/id_rsa.pub hadoop@192.168.92.102:~/.ssh/master.pub 
hadoop@192.168.92.101:scp ~/.ssh/id_rsa.pub hadoop@192.168.92.103:~/.ssh/master.pub

#192.168.92.102
hadoop@192.168.92.102:scp ~/.ssh/id_rsa.pub hadoop@192.168.92.101:~/.ssh/slave02.pub 
hadoop@192.168.92.102:scp ~/.ssh/id_rsa.pub hadoop@192.168.92.103:~/.ssh/slave02.pub 

#192.168.92.103
hadoop@192.168.92.103:scp ~/.ssh/id_rsa.pub hadoop@192.168.92.101:~/.ssh/slave03.pub 
hadoop@192.168.92.103:scp ~/.ssh/id_rsa.pub hadoop@192.168.92.102:~/.ssh/slave03.pub


Paste_Image.png


cat slave2.pub >> authorized_keys
cat slave3.pub >> authorized_keys

重复以上步骤(注意自己操作的主机,文件名)
修改主机名:

sudo hostnamectl --static set-hostname master
sudo hostnamectl --static set-hostname slave2
sudo hostnamectl --static set-hostname slave3

重新连接就可以看到新的主机名了

5.测试

ssh master
ssh slave02
ssh slave03

此时会有如下提示(SSH首次登陆提示),输入 yes 。




end