`
hanqunfeng
  • 浏览: 1541912 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

linux远程登录免password

阅读更多

如果希望从ServerA免输入passwd sshServerB,先在ServerA上执行:

ssh-keygen -b 1024 -t rsa  //生产密钥对

 

例如:连续回车即可

 

hanqf@localhost:~$ ssh-keygen -b 1024 -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/hanqf/.ssh/id_rsa):
Created directory '/home/hanqf/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/hanqf/.ssh/id_rsa.
Your public key has been saved in /home/hanqf/.ssh/id_rsa.pub.
The key fingerprint is:
d5:5a:63:3d:e7:09:d9:34:d5:2b:55:b5:a8:d8:7d:b9 hanqf@localhost

 

结果会在当前用户的家目录下的.ssh目录下面生成两个文件id_rsa.pubid_rsa

cat id_rsa.pub >> authorized_keys   //把公钥的内容复制到authorized_keys 

 

然后再把id_rsa.pub拷贝到ServerB的用户目录下的.ssh目录下的authorized_keys文件中,

如果ServerB下没有.ssh目录,可以先新建一个

mkdir .ssh

如果.ssh目录存在,但是没有authorized_keys这个文件,可以执行下面这个命令。

scp id_rsa.pub ServerB:~/.ssh/authorized_keys

例如:

 

hanqf@localhost:scp id_rsa.pub develop@192.168.1.219:~/.ssh/authorized_keys

develop@192.168.1.219's password:

 


如果ServerB已经有了该文件,请执行下面的命令把SeverAid_rsa.pub的内容添加到该文件中。

scp id_rsa.pub ServerB:~/.ssh/ServerA_rsa.pub
cat ServerA_rsa.pub >> authorized_keys

 

hanqf@localhost:scp id_rsa.pub develop@192.168.1.219:~/.ssh/192.168.1.219_rsa.pub

develop@192.168.1.219's password:

hanqf@localhost:sshdevelop@192.168.1.219

develop@192.168.1.219's password:

develop@localhost: cat 192.168.1.219_rsa.pub >> authorized_keys

 

 

修改ServerB的文件权限,这个非常重要,否则不能成功

ServerB的home目录下执行

chmod 700 .ssh/

chmod 600 .ssh/authorized_keys   注意,该文件夹下所有文件都必须是600


测试一下儿:

 

hanqf@localhost:ssh develop@192.168.1.219

Last login:Wed May 13 14:41:43 2009 from 192.168.0.66

develop@localhost:

 

 

如果想从ServerBpassword登录到ServerA,请把上述过程反向操作一遍。

 

如果ServerB与ServerA的用户相同,则可以不加用户,如下

ssh 192.168.1.219

 

如果端口不是22,这需要执行端口

ssh -p 2188 user@192.168.1.219  //不同用户名

ssh -p 2188 192.168.1.219  //相同用户名

scp -P 2188 xxx.txt  user@192.168.1.219:~/xxx.txt //不同用户名

scp -P 2188 xxx.txt  192.168.1.219:~/xxx.txt //相同用户名

 

退出ssh:exit

 

ssh远程调用脚本

 

ssh -p 2188 192.168.1.219 "/bin/bash ~/xxx.sh"

 

 

 

 

 

分享到:
评论

相关推荐

    linux远程连接oracle数据库

    ### Linux远程连接Oracle数据库知识点详解 #### 一、测试项目 - **通过Java程序远程连接Oracle 10g数据库** - Java作为一种广泛使用的编程语言,可以用来开发各种应用程序,包括与数据库交互的应用。要实现Java...

    java通过代码登录远程linux服务器并执行linux命令源码以及jar包

    在Java编程中,有时我们需要实现一个功能,即通过代码远程登录Linux服务器并执行特定的Linux命令。这在自动化运维、远程脚本执行等场景中非常常见。本篇将详细讲解如何实现这一目标,并提供相关源码及jar包。 首先...

    linux 远程控制windows系统下的程序(三种方法)

    有时候我们需要通过在linux上远程运行windows系统上的程序。 方法一: 通过python中的 winrm模块,前提条件,先提前设置好winrm服务。如何设置请自行百度,winRM服务是windows server下PowerShell的远程管理服务。...

    linux下远程定时备份oracle数据库

    在远程备份Oracle数据库时,你需要获取Oracle数据库服务器的SSH访问权限,并配置相应的SSH密钥对,以便无密码登录。这样可以避免每次备份时手动输入密码,增加自动化程度。同时,确保Linux环境中的用户有执行Oracle...

    putty,linux远程登陆工具

     随着Linux在服务器端应用的普及,Linux系统管理越来越依赖于远程。在各种远程登录工具中,Putty是  出色的工具之一。  Putty是一个免费的、Windows 32平台下的telnet、rlogin和ssh客户端,但是功能丝毫不逊色于...

    c#远程控制linux

    SSH是一种安全的网络协议,常用于远程登录、文件传输等操作,尤其适用于管理Linux服务器。 首先,我们需要了解SSH的基本原理。SSH提供了一种加密的网络通信方式,可以确保数据传输的安全性。它允许用户通过命令行...

    连接linux远程服务器

    连接Linux远程服务器需要遵循一定的步骤,包括关闭防火墙、开放 MySQL 端口、登录 MySQL 并配置权限、重启 MySQL 服务等。使用 Navicat 连接虚拟机处理也需要遵循相似的步骤,包括连接到虚拟机、关闭防火墙、配置 ...

    JAVA下载远程Linux服务器的文件

    在Java编程中,有时我们需要与远程Linux服务器进行交互,例如下载或上传文件。在这个场景下,我们可以使用SMB(Server Message Block)协议,这是一种网络文件共享协议,常见于Windows系统,但同样可以应用于Linux...

    java应用程序远程登录linux并执行其命令

    根据给定的信息,本文将详细解释如何通过Java应用程序实现对Linux服务器的远程登录,并执行相应的命令。本案例中,我们采用的是Ganymed SSH2库来实现这一功能。 ### 一、Ganymed SSH2 库简介 Ganymed SSH2 是一个...

    配置Linux服务器上远程桌面.pdf

    ### 配置Linux服务器上远程桌面 #### 一、引言 随着远程工作的普及和技术的发展,对于IT管理人员和开发人员而言,能够灵活高效地管理远程服务器变得尤为重要。远程桌面技术,如VNC(Virtual Network Computing),...

    Linuxssh登录远程服务器 expect

    总结来说,"Linux ssh登录远程服务器 expect"是利用Expect脚本自动化Linux通过SSH协议登录远程服务器的过程,它可以高效、安全地执行远程运维任务,尤其适用于批量管理和监控大量服务器的场景。了解和掌握这一技术,...

    linux 系统远程操作工具

    在 `/etc/ssh/sshd_config` 文件中,确保 `PermitRootLogin` 设置为 `yes` 或 `without-password`,根据安全性需求来决定是否允许root用户登录。 3. **X11转发**:在客户端,通过SSH连接服务器时添加 `-X` 或 `-Y` ...

    linuxmysql远程登录,及用户权限.docx

    ### Linux MySQL远程登录与用户权限详解 #### 一、引言 在进行数据库管理与开发的过程中,经常会遇到需要从远程机器访问MySQL服务器的情况。尤其是在Linux环境下,如何顺利地实现远程登录MySQL并正确设置用户权限...

    VNC远程登录 Linux系统端配置

    ### VNC远程登录 Linux系统端配置详解 #### 一、VNC简介 VNC(Virtual Network Computing)是一种显示系统,它允许用户通过网络控制另一台计算机。最初由AT&T实验室开发,VNC允许用户轻松地从任何地方访问并控制...

    Java实现Linux的远程拷贝

    总的来说,Java通过JSch库提供了强大的SSH连接能力,让我们能够方便地实现Linux远程拷贝功能。理解并熟练运用这些知识,对于开发涉及跨平台操作的Java应用非常关键。通过不断实践和优化,我们可以构建出稳定、高效且...

    Linux下远程连接windows3389端口

    "Linux下远程连接windows3389端口"这个话题就是关于如何在Linux系统上通过远程桌面协议(RDP)连接到Windows系统,利用Windows的3389端口进行远程桌面操作。 Windows的远程桌面功能基于RDP协议,它允许用户通过网络...

    Linux平台mysql开启远程登录

    首先访问本机的mysql(用ssh登录终端,输入如下命令): mysql -uroot -p 输入密码登陆进去后,输入如下的语句: use mysql; grant all privileges on *.* to 'user'@'%' identified by 'password' with grant ...

Global site tag (gtag.js) - Google Analytics