当前位置 >> 高防服务器 > 帮助 >

2018-11-23 10:31

如何实现美国23.234.3.x两台服务器间无密码的传输数据和操作

  我们知道如果要向远程服务器传输数据和操作必须输入用户名和密码远程登录服务器 ,或用FTP等协议,都需要权限控制。

  然而如果是两台服务器间的软件需要通讯和数据传输,如hadoop集群中机器互访,是不是每次也要输入用户名和密码?那是不是很麻烦?下面介绍SSH来解决这个问题(不是JAVA中的SSH概念)
 

  需美国高防服务器的请咨询鸿网王兵 企业QQ:2885340632 
 

 

SSH是一种网络协议,用于计算机之间的加密登录。

如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。

最早的时候,互联网通信都是明文通信,一旦被截获,内容就暴露无疑。1995年,芬兰学者Tatu Ylonen设计了SSH协议,将登录信息全部加密,成为互联网安全的一个基本解决方案,迅速在全世界获得推广,目前已经成为Linux系统的标准配置。

需要指出的是,SSH只是一种协议,存在多种实现,既有商业实现,也有开源实现。本文针对的实现是OpenSSH,它是自由软件,应用非常广泛。

此外,本文只讨论SSH在Linux Shell中的用法。如果要在Windows系统中使用SSH,会用到另一种软件PuTTY

Hadoop运行过程中需要管理远端Hadoop守护进程,在Hadoop启动以后,NameNode是通过SSH(Secure Shell)来启动和停止各个DataNode上的各种守护进程的。
这就必须在节点之间执行指令的时候是不需要输入密码的形式,故我们需要配置SSH运用无密码公钥认证的形式,这样NameNode使用SSH无密码登录并启动DataName进程,同样原理,DataNode上也能使用SSH无密码登录到NameNode。

  下面就安装总结一下网友和自己的经验。

环境

  CentOS7.0

安装 

yum install ssh 安装SSH协议 yum install rsync (rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件) service sshd restart 启动服务

查看安装

rpm –qa | grep openssh rpm –qa | grep rsync

 

  为避免麻烦,每个服务器上都要装。

配置Master无密码登录所有Salve

  1)SSH无密码原理
Master(NameNode | JobTracker)作为客户端,要实现无密码公钥认证,连接到服务器Salve(DataNode | Tasktracker)上时,需要在Master上生成一个密钥对,包括一个公钥和一个私钥,而后将公钥复制到所有的Slave上。当Master通过SSH连接Salve时,Salve就会生成一个随机数并用Master的公钥对随机数进行加密,并发送给Master。Master收到加密数之后再用私钥解密,并将解密数回传给Slave,Slave确认解密数无误之后就允许Master进行连接了。这就是一个公钥认证过程,其间不需要用户手工输入密码。重要过程是将客户端Master复制到Slave上。
2)Master机器上生成密码对
在Master节点上执行以下命令:

ssh-keygen –t rsa –P '

  这条命是生成其无密码密钥对,询问其保存路径时直接回车采用默认路径。生成的密钥对:id_rsa和id_rsa.pub,默认存储在"/home/hadoop/.ssh"目录下(每台服务器看各自的生成路径信息 因为hadoop为用户名,所以生成在当前用户名下)。

 

  查看"/home/hadoop/"下是否有".ssh"文件夹,且".ssh"文件下是否有两个刚生产的无密码密钥对。

 

  接着在Master节点上做如下配置,把id_rsa.pub追加到授权的key里面去。

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

 

  在验证前,需要做两件事儿。第一件事儿是修改文件"authorized_keys"权限(权限的设置非常重要,因为不安全的设置安全设置,会让你不能使用RSA功能),另一件事儿是用root用户设置"/etc/ssh/sshd_config"的内容。使其无密码登录有效。
1)修改文件"authorized_keys"

chmod 600 ~/.ssh/authorized_keys

 

  备注:如果不进行设置,在验证时,扔提示你输入密码,在这里花费了将近半天时间来查找原因。

2)设置SSH配置
用root用户登录服务器修改SSH配置文件"/etc/ssh/sshd_config"的下列内容。

 

RSAAuthentication yes # 启用 RSA 认证
PubkeyAuthentication yes # 启用公钥私钥配对认证方式
AuthorizedKeysFile .ssh/authorized_keys # 公钥文件路径(和上面生成的文件同)

  设置完之后记得重启SSH服务,才能使刚才设置有效。

service sshd restart

  退出root登录,使用hadoop普通用户验证是否成功。

ssh localhost

 

  从上图中得知无密码登录本级已经设置完毕,接下来的事儿是把公钥复制所有的Slave机器上。使用下面的命令格式进行复制公钥:

scp ~/.ssh/id_rsa.pub 远程用户名@远程服务器IP:~/

  例如:

scp ~/.ssh/id_rsa.pub hadoop@192.168.1.3:~/

  上面的命令是复制文件"id_rsa.pub"到服务器IP为"192.168.1.3"的用户为"hadoop"的"/home/hadoop/"下面。

下面就针对IP为"192.168.1.3"的Slave1.Hadoop的节点进行配置。
1)把Master.Hadoop上的公钥复制到Slave1.Hadoop上

 

  从上图中我们得知,已经把文件"id_rsa.pub"传过去了,因为并没有建立起无密码连接,所以在连接时,仍然要提示输入输入Slave1.Hadoop服务器用户hadoop的密码。为了确保确实已经把文件传过去了,用SecureCRT登录Slave1.Hadoop:192.168.1.3服务器,查看"/home/hadoop/"下是否存在这个文件。

 

  从上面得知我们已经成功把公钥复制过去了。
2)在"/home/hadoop/"下创建".ssh"文件夹
这一步并不是必须的,如果在Slave1.Hadoop的"/home/hadoop"已经存在就不需要创建了,因为我们之前并没有对Slave机器做过无密码登录配置,所以该文件是不存在的。用下面命令进行创建。(备注:用hadoop登录系统,如果不涉及系统文件修改,一般情况下都是用我们之前建立的普通用户hadoop进行执行命令。)

mkdir ~/.ssh

  然后是修改文件夹".ssh"的用户权限,把他的权限修改为"700",用下面命令执行:

chmod 700 ~/.ssh

  备注:如果不进行,即使你按照前面的操作设置了"authorized_keys"权限,并配置了"/etc/ssh/sshd_config",还重启了sshd服务,在Master能用"ssh localhost"进行无密码登录,但是对Slave1.Hadoop进行登录仍然需要输入密码,就是因为".ssh"文件夹的权限设置不对。这个文件夹".ssh"在配置SSH无密码登录时系统自动生成时,权限自动为"700",如果是自己手动创建,它的组权限和其他权限都有,这样就会导致RSA无密码远程登录失败。

 

 

  对比上面两张图,发现文件夹".ssh"权限已经变了。
3)追加到授权文件"authorized_keys"
到目前为止Master.Hadoop的公钥也有了,文件夹".ssh"也有了,且权限也修改了。这一步就是把Master.Hadoop的公钥追加到Slave1.Hadoop的授权文件"authorized_keys"中去。使用下面命令进行追加并修改"authorized_keys"文件权限:

cat ~/id_rsa.pub >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys

 

  4)用root用户修改"/etc/ssh/sshd_config"
具体步骤参考前面Master.Hadoop的"设置SSH配置",具体分为两步:第1是修改配置文件;第2是重启SSH服务。
5)用Master.Hadoop使用SSH无密码登录Slave1.Hadoop
当前面的步骤设置完毕,就可以使用下面命令格式进行SSH无密码登录了。

ssh 远程服务器IP

 

  从上图我们主要3个地方,第1个就是SSH无密码登录命令,第2、3个就是登录前后"@"后面的机器名变了,由"Master"变为了"Slave1",这就说明我们已经成功实现了SSH无密码登录了。
最后记得把"/home/hadoop/"目录下的"id_rsa.pub"文件删除掉。

rm –r ~/id_rsa.pub


精品IP展示:

  23.234.3.1

  23.234.3.2

  23.234.3.3

  23.234.3.4

  23.234.3.5

  23.234.3.6

  23.234.3.7

  23.234.3.8

  23.234.3.9

  23.234.3.10

  23.234.3.11

  23.234.3.12

  23.234.3.13

  23.234.3.14

  23.234.3.15

  23.234.3.16

  23.234.3.17

  23.234.3.18

  23.234.3.19

  23.234.3.20

  23.234.3.21

  23.234.3.22

  23.234.3.23

  23.234.3.24

  23.234.3.25

  23.234.3.26

  23.234.3.27

  23.234.3.28

  23.234.3.29

  23.234.3.30

  23.234.3.31

  23.234.3.32

  23.234.3.33

  23.234.3.34

  23.234.3.35

  23.234.3.36

  23.234.3.37

  23.234.3.38

  23.234.3.39

  23.234.3.40

  23.234.3.41

  23.234.3.42

  23.234.3.43

  23.234.3.44

  23.234.3.45

  23.234.3.46

  23.234.3.47

  23.234.3.48

  23.234.3.49

  23.234.3.50

  23.234.3.51

  23.234.3.52

  23.234.3.53

  23.234.3.54

  23.234.3.55

  23.234.3.56

  23.234.3.57

  23.234.3.58

  23.234.3.59

  23.234.3.60

  23.234.3.61

  23.234.3.62

  23.234.3.63

  23.234.3.64

  23.234.3.65

  23.234.3.66

  23.234.3.67

  23.234.3.68

  23.234.3.69

  23.234.3.70

  23.234.3.71

  23.234.3.72

  23.234.3.73

  23.234.3.74

  23.234.3.75

  23.234.3.76

  23.234.3.77

  23.234.3.78

  23.234.3.79

  23.234.3.80

  23.234.3.81

  23.234.3.82

  23.234.3.83

  23.234.3.84

  23.234.3.85

  23.234.3.86

  23.234.3.87

  23.234.3.88

  23.234.3.89

  23.234.3.90

  23.234.3.91

  23.234.3.92

  23.234.3.93

  23.234.3.94

  23.234.3.95

  23.234.3.96

  23.234.3.97

  23.234.3.98

  23.234.3.99

  23.234.3.100

  23.234.3.101

  23.234.3.102

  23.234.3.103

  23.234.3.104

  23.234.3.105

  23.234.3.106

  23.234.3.107

  23.234.3.108

  23.234.3.109

  23.234.3.110

  23.234.3.111

  23.234.3.112

  23.234.3.113

  23.234.3.114

  23.234.3.115

  23.234.3.116

  23.234.3.117

  23.234.3.118

  23.234.3.119

  23.234.3.120

  23.234.3.121

  23.234.3.122

  23.234.3.123

  23.234.3.124

  23.234.3.125

  23.234.3.126

  23.234.3.127

  23.234.3.128

  23.234.3.129

  23.234.3.130

  23.234.3.131

  23.234.3.132

  23.234.3.133

  23.234.3.134

  23.234.3.135

  23.234.3.136

  23.234.3.137

  23.234.3.138

  23.234.3.139

  23.234.3.140

  23.234.3.141

  23.234.3.142

  23.234.3.143

  23.234.3.144

  23.234.3.145

  23.234.3.146

  23.234.3.147

  23.234.3.148

  23.234.3.149

  23.234.3.150

  23.234.3.151

  23.234.3.152

  23.234.3.153

  23.234.3.154

  23.234.3.155

  23.234.3.156

  23.234.3.157

  23.234.3.158

  23.234.3.159

  23.234.3.160

  23.234.3.161

  23.234.3.162

  23.234.3.163

  23.234.3.164

  23.234.3.165

  23.234.3.166

  23.234.3.167

  23.234.3.168

  23.234.3.169

  23.234.3.170

  23.234.3.171

  23.234.3.172

  23.234.3.173

  23.234.3.174

  23.234.3.175

  23.234.3.176

  23.234.3.177

  23.234.3.178

  23.234.3.179

  23.234.3.180

  23.234.3.181

  23.234.3.182

  23.234.3.183

  23.234.3.184

  23.234.3.185

  23.234.3.186

  23.234.3.187

  23.234.3.188

  23.234.3.189

  23.234.3.190

  23.234.3.191

  23.234.3.192

  23.234.3.193

  23.234.3.194

  23.234.3.195

  23.234.3.196

  23.234.3.197

  23.234.3.198

  23.234.3.199

  23.234.3.200

  23.234.3.201

  23.234.3.202

  23.234.3.203

  23.234.3.204

  23.234.3.205

  23.234.3.206

  23.234.3.207

  23.234.3.208

  23.234.3.209

  23.234.3.210

  23.234.3.211

  23.234.3.212

  23.234.3.213

  23.234.3.214

  23.234.3.215

  23.234.3.216

  23.234.3.217

  23.234.3.218

  23.234.3.219

  23.234.3.220

  23.234.3.221

  23.234.3.222

  23.234.3.223

  23.234.3.224

  23.234.3.225

  23.234.3.226

  23.234.3.227

  23.234.3.228

  23.234.3.229

  23.234.3.230

  23.234.3.231

  23.234.3.232

  23.234.3.233

  23.234.3.234

  23.234.3.235

  23.234.3.236

  23.234.3.237

  23.234.3.238

  23.234.3.239

  23.234.3.240

  23.234.3.241

  23.234.3.242

  23.234.3.243

  23.234.3.244

  23.234.3.245

  23.234.3.246

  23.234.3.247

  23.234.3.248

  23.234.3.249

  23.234.3.250

  23.234.3.251

  23.234.3.252

  23.234.3.253

  23.234.3.254

阅读本文的人还阅读:

如何解决访问国外ERP服务器和跨境办

香港云服务器租用如何选择

美国云主机如何选择,美国云主机哪

美国高防服务器租用如何选择,哪个

香港云服务器可以更新操作系统吗,