Linux免密码登录配置ssh配置免密码登录
目的
在搭建Linux集群服务的时候,主服务器需要启动从服务器的服务,如果通过手动启动,集群内服务器几台还好,要是像阿里1000台的云梯hadoop集群的话,轨迹启动一次集群就得几个工程师一两天时间,是不是很恐怖。如果使用免密登录,主服务器就能通过程序执行启动脚步,自动帮我们将从服务器的应用启动。而这一切就是建立在ssh服务的免密码登录之上的。所以要学习集群部署,就必须了解linux的免密码登录。
原理
使用一种被称为"公私钥"认证的方式来进行ssh登录. "公私钥"认证方式简单的解释是
首先在客户端上创建一对公私钥 (公钥文件:~/.ssh/id_rsa.pub; 私钥文件:~/.ssh/id_rsa)
然后把公钥放到服务器上(~/.ssh/authorized_keys), 自己保留好私钥
当ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配.如果匹配成功就可以登录了
提示(新手必读)
(1)配置免登录前,请确保网络环境达到要求(后续内容有详细说明) (2)免登录其实是在本机生成两把锁,一把所谓的公钥是放到要登录的那台服务器上的,其实是一串文本。 (3)被登录的服务器上只会有一个公钥文件,叫authorized_keys。如果被登录的服务器有多个客户端要连上来,就会把每个文本密钥存成一行。 (4)客户端发送到服务器端的密钥文件一定要放到登录用户主目录的~/.ssh这个隐藏目录下, 比如用hadoop用户登录到192.168.102.248服务器,如果hadoop的主目录是/home/hadoop,那么,密钥文件一定是在/home/hadoop/.ssh/下 (5)如果直接将authorized_keys的文件从客户端通过scp或者ssh-copy-id方式发送到服务器端,会覆盖原来的文件,对其他用户有影响,所以发送时要进行改名后合并,
配置环境:
(1)服务器IP、名称、网卡信息
3台 Redhat 5.6 linux 64位系统内容如下:
IP地址: 服务器名称 网卡名称 用户名 主目录
192.168.102.247 hadoop1 eth0 hadoop /home/hadoop
192.168.102.248 hadoop2 eth0 hadoop /home/hadoop
192.168.102.249 hadoop3 eth0 hadoop /home/hadoop
配置准备:
(1)添加用户
1. 以root用户分别登录各服务器。 2. 执行如下命令,创建用户。 useradd -d /home/hadoop -s /bin/bash -m hadoop 3. 执行如下命令,为用户“hadoop ”设置密码。 passwd hadoop 4. 您需要根据系统的提示输入两次密码“aaaa@1111”。 5. 为“hadoop ”赋予“sudo”权限。 a. 执行以下命令,添加“/etc/sudoers”文件的写权限。 chmod u+w /etc/sudoers b. 使用vi编辑器,在“/etc/sudoers”文件中“root ALL=(ALL) ALL”后添加语句,如黑体部分 所示。 root ALL=(ALL) ALL hadoop ALL=(ALL) ALL c. 执行以下命令,删除“/etc/sudoers”文件的写权限。 chmod u-w /etc/sudoers
(2)配置网络
(一)修改主机别名
以root用户登录,依次修改每台服务器的主机信息,通过 vim /etc/hosts修改主机信息,加入主机别名
如果主机IP是192.168.102.247,本机主机名是hadoop1,那么 /etc/hosts 文件的内容应该包含一下内容:
127.0.0.1 hadoop1 localhost 192.168.102.247 hadoop1 192.168.102.248 hadoop2 192.168.102.249 hadoop3
如果主机IP是192.168.102.248,本机主机名是hadoop2,那么 /etc/hosts 文件的内容应该包含一下内容:
127.0.0.1 hadoop2 localhost 192.168.102.247 hadoop1 192.168.102.248 hadoop2 192.168.102.249 hadoop3
如果主机IP是192.168.102.249,本机主机名是hadoop3,那么 /etc/hosts 文件的内容应该包含一下内容:
127.0.0.1 hadoop3 localhost 192.168.102.247 hadoop1 192.168.102.248 hadoop2 192.168.102.249 hadoop3
(二)修改服务器主机名称 hostname,
以root用户登录,需要修改3个地方,hostname 指令,如果只修改这一处,重启电脑后还是会变回来。/etc/hosts主机文件, 这个地方修改是给DNS解析用的。单独修改也不行。只有三个地方同时修改才能算修改完成。修改完成后重启服务器。
【1】 hostname 指令中修改。
直接输入hostname查看主机名是不是hadoop,如果不是,输入“hostname hadoop” 再输入 “hostname” 进行验证
【2】使用 vim /etc/sysconfig/network 修改网络配置中主机名,将修改 HOSTNAME=hadoop
【3】使用 vim /etc/hosts 修改主机文件中本机名称,修改127.0.0.1后面的名称为 hadoop2 localhost。
(三)修改网卡名称 --(可选)
1. 以root用户登录各服务器。
2. 使用vi编辑器,修改“/etc/udev/rules.d/70-persistent-net.rules”文件 --- (如果服务器没有此文件就跳过)。如果是虚拟机,没有此文件,就不用修改 ,主要是修改NAME="eth0"
# PCI device 0x14e4:0x1713 (tg3) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:1e:ec:0f:79:f 6", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
3. 使用vi编辑器,修改“/etc/sysconfig/network-scripts/ifcfg-eth0”文件。
主要是DEVICE=“eth0"
4. 执行reboot命令,重新启动服务器。
5. 执行ifconfig命令,查看网卡名称。
6. 参考“步骤1”至“步骤5”,将所有服务器的网卡名称设置为“eth0”。
配置免登录
(1)创建或者修改密钥目录权限 (此操作在所有服务器完成后再进入下一步)
假设本机的IP为“192.168.102.247”,配置免登录的操作步骤如下: 1. 以hadoop用户登录各服务器。 2. 执行以下命令,修改“.ssh 目录”权限。 chmod 755 ~/.ssh 说明:如果“.ssh”目录不存在,请在/home/hadoop目录执行 mkdir ~/.ssh 命令创建。
(2)创建公钥和私钥(此操作在所有服务器完成后再进入下一步)
1. 以hadoop用户登录本机(假设本机的IP为“192.168.102.247”)。 2. 执行以下命令,进入“.ssh”目录。 cd /home/hadoop/.ssh 3. 执行以下命令后,如果提示,就一直按“Enter”键,直至生成公钥。 ssh-keygen -t rsa
相关推荐
Linux服务器禁止密码登录,设置秘钥登录,sshd-config配置
1.2.1禁止SSH 空密码用户登录 安全基线项目名称 操作系统Linux安全基线要求项 安全基线项说明 禁止SSH空密码用户登录 安全基线要求 编辑文件/etc/ssh/sshd_config,将 PermitEmptyPasswords设置为:no 并重启服务 ...
配置完成后单击“Open”按钮,出现如图2的登录界面,就可以使用Putty连接Linux主机了。 关于putty的一些使用中常见的问题 一、在Windows中使用putty登录FreeBsd系统时,能够输入用户名,但是输入密码后按回车...
1. 配置sshd服务 SSH(Secure shell)是一种能够以安全的方式提供远程登录的协议,也是目前远程管理Linux 系统的首选方式。在此之前,一般使用FTP或 Telnet 来进行远程登录。但是因为它们以明文的形式在网络中传输...
环境选项使用以下环境变量配置容器,或选择在/etc/ssh/sshd_config挂载自定义sshd配置:常规选项SSH_USERS要创建的用户帐户和uid / SSH_USERS列表。 例如SSH_USERS=www:48:48,admin:1000:1000:/bin/bash 。 用于指定...
一、ssh服务器安装 1).我们使用免费软件freeSSHd。... 2)安装完成后进入配置界面, ...选择PassWord需要每次登录填写密码。 (3)在Authentication界面,确定Public key为Allowed. (4)在Linux客户端ssh配置,参
6. Root用户内置ansible控制端公钥可以直接root登录,Sshd服务端 禁止root密码登录 使用公钥或者普通用户登录后su或者sudo 禁止dns,Ssh客户端开启持久连接,加密算法使用椭圆曲线ecdsa 7. dns解析,时间同步,日志...
关于 SSH Server 的整体设定,包含使用的 port 啦,以及使用的密码演算方式Port 22 # SSH 预设使用 22 这个 port,您也可以使用多的 port ! # 亦即重复使用 port 这个设定项目即可!Protocol 2,1 # 选择的 SSH ...
1、 密码策略 /etc/login.defs 2、 Grub /etc/grub.conf 3、 登录注销 /etc/profile 4、 历史命令 /etc/profile 5、 启动审核 service auditd restart 6、 限制root的SSH登录 /etc/ssh/sshd_config 7、 更改SSH端口 ...
作为一个安全通信协议,使用时需要密码,因此我们要设置成为免密码登录。 2. hadoop配置 2.1. 安装 安装hadoop集群通常要将安装软件解压到集群内的所有机器上,并且安装路径要一致。 2.2. 配置 在配置阶段,主要...
新版kali安装时root账户默认密码为空,根据密码安全策略密码为空时不能登录,登录时会报错,默认情况下ssh服务关闭。本文介绍了如何设置root密码以及配置并开启ssh服务。
(2) sshd_config 默认安全项配置 (3) 登录超时 (4) 禁用 telnet 和 swat (5) 登录地址限制 access.so (6) 登录失败锁定 完整版功能: (1) 系统新建用户后,需要先修改密码 (2) sshd_config 默认安全项配置 (3) 登录...
密码:vncserver(第一次配置密码),vncpasswd(修改密码) 单次启动:vncserver(新启动一个,编号自动加1);vncserver :1(指定编号启动,中间需空格) 重启:先vncserver -kill :1,再vncserver :1(每个用户...
无论何时登录公司的某些生产系统,你都会看到一些登录消息、警告或关于你将登录或已登录的服务器的信息,如下所示。这些是登录导语login banner。 在本文中,我们将教你如何配置它们。 你可以配置两种类型的提示...
配置完成后单击“Open”按钮,出现如图2的登录界面,就可以使用Putty连接Linux主机了。 关于putty的一些使用中常见的问题 一、在Windows中使用putty登录FreeBsd系统时,能够输入用户名,但是输入密码后按回车...
配置完成后单击“Open”按钮,出现如图2的登录界面,就可以使用Putty连接Linux主机了。 关于putty的一些使用中常见的问题 一、在Windows中使用putty登录FreeBsd系统时,能够输入用户名,但是输入密码后按回车...
使用ssh客户端(如:putty)连接Linux服务器,可能会等待10-30秒才有提示输入密码。严重影响工作效率。登录很慢,登录上去后速度正常,这种情况主要有两种可能的原因: 1. DNS反向解析问题 OpenSSH在用户登录的时候...
1.在sshd配置文件/etc/ssh/sshd_config中 UseDNS yes 修改为 UseDNS no,可以确保连接顺畅 2.像执行时间过长的命令,如top、yum这类命令不适合执行 3.进入到项目的目录,使用Ant来编译打包 三、交互模式执行动作效果...
修改配置文件/etc/ssh/sshd_config,去掉PermitRootLogin前的注释,修改值为no,然后重启sshd服务即可 #LoginGraceTime 2m PermitRootLogin no #StrictModes yes MaxAuthTries 3 #MaxSessions 10 service sshd ...
1. 使用 ubuntu 帐户登录云服务器 2. 执行以下命令,设置 root 密码 5. 执行以下命令,打开 sshd_config 配置文件 6. 按 i