问题1

一般错误信息为:ssh: connect to host localhost port 22: Connection refused

这种错误很主要的一个原因是sshd服务没有启动,先启动sshd服务后就没有问题了。

启动sshd服务:service  sshd  start(前提条件是你已安装过ssh了)

或者防火墙阻止了sshd服务

问题2

无密码登录

首先,root修改/etc/ssh/sshd_config文件(客户端、服务器都需要更改)
将“#AuthorizedKeysFile      .ssh/authorized_keys”前面的#号去掉
即,启用“AuthorizedKeysFile      .ssh/authorized_keys”
(如果需要root也能ssh登录,把“#PermitRootLogin yes”前面的#号也去掉)
同样root账户下,/etc/rc.d/init.d/sshd  restart重启sshd服务使之生效
(客户端中)切换到需要ssh登录的帐户下:
ssh-keygen  -t  rsa   产生公私钥对
回车   采用默认文件保存钥匙
xxxxx 回车   键入密码短语,直接回车为不建立密码短语。密码短语至少5个字符
xxxxx 回车   重复密码短语,直接回车为不建立密码短语
公私钥产生在此账户的.ssh目录中,id_rsa为私钥,id_rsa.pub为公钥
(服务器中)切换到需要ssh登录的帐户下:
如果服务器中尚未建立公私钥对,那么首先按照客户端的方法建立公私钥对
scp  账户名@客户端主机名或ip地址:/home/帐户名/.ssh/id_rsa.pub  /home/帐户名/
将客户端账户的公钥拷到服务器中。客户端用主机名或ip地址均可,但是需与ssh登录命令相符,建议将主机名与ip地址写入/etc/hosts中,此处用主机名即可(下同)。
yes   将客户端写入known_hosts中
输入客户端中的账户密码完成复制
cat  /home/帐户名/id_rsa.pub  >>/home/帐户名/.ssh/authorized_keys   将id_rsa.pub中的内桶添加到authorized_keys文件中,authorized_keys文件名需与sshd_config中的设置相符。
chmod  644  /home/帐户名/.ssh/authorized_keys   修改authorized_keys文件的权限,至少为644,也可更为严厉(600),不修改的话ssh无密码登录不起作用。
(客户端中)切换到需要ssh登录的帐户下:
ssh  服务器主机名   登录服务器,若在服务器与客户端中的帐户名不同,则
ssh  帐户名@服务器主机名
yes    将服务器写入known_hosts中
若产生公私钥时设置了密码短语,还需要输入密码短语,为了方便,可在客户端中
ssh-add,然后输入密码短语,下次再ssh登录,无需再输入密码短语
 
关于公私钥对的一点理解:
公私钥对就像是一套钥匙和锁,公钥是锁,私钥是钥匙。私钥留在客户端中,公钥发给服务器。服务器可以有很多把锁,客户端只有一把钥匙。当客户端ssh登录服务器时,服务器会找到这个客户端发的锁,然后跟客户端要钥匙,如果钥匙是配套的,那么登录成功,反之登录失败。当然,以上是针对同一个用户说的,不同用户的公私钥对也不同,而且每次ssh-keygen产生的公私钥对也不同。

ssh相关问题的更多相关文章

  1. SSH相关

    [root@www ~]# vim /etc/ssh/sshd_config# 1. 关于SSH Server 的整体设定,包含使用的port 啦,以及使用的密码演算方式# Port 22# SSH ...

  2. ssh相关操作

    连接:ssh username@ip 拷贝ssh客户端文件到ssh服务器: cp 文件名 username@ip:文件名 拷贝ssh服务器文件夹到ssh客户端: scp -r wanglianghe@ ...

  3. VNC+SSH相关应用

    1.安装vnc-server  vncviewer2.执行vncserver  输入密码3.执行vncserver -kill :1 杀死1号屏幕4.修改/root/.vnc/xstartup   u ...

  4. ssh相关原理学习与常见错误总结

    欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...

  5. centos7版本中ssh相关的设置

    1.设置SSH连接端口1.1.关闭SELinux--关闭系统当前selinux# setenforce 0 --关闭系统永久selinux# sed -i 's/SELINUX=enforcing/S ...

  6. CentOS7 SSH相关

    1.查看SSH是否已经安装,命令: rpm -qa |grep ssh 如果列出了openssh-x.x开头的软件名,代表已经安装 如果没有安装,使用命令安装: yum install ssh 2.如 ...

  7. ssh相关命令

    ssh命令 ssh命令是openssh套件中的客户端连接工具,可以给予ssh加密协议实现安全的远程登录服务器. 语法ssh(选项)(参数)选项 -1:强制使用ssh协议版本1: -2:强制使用ssh协 ...

  8. SSH相关知识

    SSH(Secure Shell, 安全Shell协议)是一种加密的网络传输协议,经常用于安全的远程登录. SSH只是一种协议,可以有多种实现. OPENSSH是一种应用广泛的实现. sshd是dae ...

  9. [Linux]ssh相关问题

    ssh链接不上的最可能原因是防火墙没关,一般提示“connection refused”. 可以使用这个命令查看:#service iptables status 暂时关闭iptables,重启后还会 ...

随机推荐

  1. Spring MVC 项目搭建 -5- spring security 使用数据库进行验证

    Spring MVC 项目搭建 -5- spring security 使用数据库进行验证 1.创建数据表格(这里使用的是mysql) CREATE TABLE security_role ( id ...

  2. winform控件闪烁问题终极办法

    protected override CreateParams CreateParams { get { CreateParams cp = base.CreateParams; cp.ExStyle ...

  3. JDBC01 利用JDBC连接数据库【不使用数据库连接池】

    目录: 1 什么是JDBC 2 JDBC主要接口 3 JDBC编程步骤[学渣版本] 5 JDBC编程步骤[学神版本] 6 JDBC编程步骤[学霸版本] 1 什么是JDBC JDBC是JAVA提供的一套 ...

  4. Java IO学习笔记(三)转换流、数据流、字节数组流

    转换流 1.转换流:将字节流转换成字符流,转换之后就可以一个字符一个字符的往程序写内容了,并且可以调用字符节点流的write(String s)方法,还可以在外面套用BufferedReader()和 ...

  5. HDU 1051 Wooden Sticks 贪心||DP

    Wooden Sticks Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tot ...

  6. Java 9 揭秘(10. 模块API)

    Tips 做一个终身学习的人. 在本章节中,主要介绍以下内容: 什么是模块 API 如何在程序中表示模块和模块描述 如何读取程序中的模块描述 如何表示模块的版本 如何使用Module和ModuleDe ...

  7. Java语言的9个主要特性

    Java作为时下很流行的一门编程语言,受到很多人的热爱,那么它有哪些特性呢?一起来看看吧. 1.Java语言是简单的 Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用.另 ...

  8. Android性能优化:ViewStub

    在开发应用程序的时候,经常会遇到这样的情况,会在运行时动态根据条件来决定显示哪个View或某个布局.那么最通常的想法就是把可能用到的View都写在上面,先把它们的可见性都设为View.GONE,然后在 ...

  9. JMeter Http请求POST提交token失败,取样器结果Response Code 415

    Jmeter脚本,http请求以post方式提交token,执行脚本在察看结果中显示失败,取样器结果响应状态Response Code 415,如图:

  10. docker~使用阿里加速器安centos

    回到目录 上一篇说了hub.docker.com里拉个镜像太,而阿里云为我们做了不少本国镜像,这样下载的速度就很惊人了,下面看一下在centos7下配置阿里云加速器的方法 打开服务配置文件 vi /e ...