Ubuntu14.04下ssh安装,基本操作及无密码登陆分享

2020-02-03 14:21:38于丽
客户端安装
ssh 一般是远程安全登陆
如果是不需要配置ssh服务,只需下载安装相应的客户端就行了
sudo apt-get install openssh-client
安装成功后,在终端上敲上ssh ,
如果有各种选项提示,就说明安装成功了

服务配置
如果需要配置相应的服务,也不是很难
sudo apt-get install openssh-server
一般就会自动启动服务了(以后开机也是如此)
为了验证下 我们尝试一下指令
ps -e | grep sshd
出现相应的进程信息就说明ssh服务正常启动了

配置文件
一般来说ssh服务默认端口是22,可以通过指令验证下:
sudo netstat -ntlp | grep ssh
如果有需要该服务端口,可以 修改/etc/ssh/sshd_config 文件
vim /etc/ssh/sshd_config
修改Port 22 为 Port XXX(任意你想要的端口号,不过要验证该端口是否已被占用,可以通过netstat命令)
修改后可能会遇到无法保存的清况,因为在linux 上会有各种权限问题,所以只要改下文件的权限就可以了
sudo chmod 777 /etc/ssh/sshd_config
然后就能保存了,为了安全,你要在保存后把权限改回去
sudo chmod 644 /etc/ssh/sshd_config
最后重新启动服务就行了
sudo service ssh restart 或者 sudo /etc/init.d/ssh 就可以重新启动了

登陆验证
接下来就是登陆了,直接在终端上敲指令
ssh username@ip (username 是你的用户名 , ip是你的主机ip)
然后输入密码,就行啦
可以先在自己主机上体验,只需要把ip 设置为 127.0.0.1就行了
也可以远程登陆,只需要把ip 改为远程主机的ip就行啦

无密码登陆的两种方法
一般对程序员来说,远程登陆进行各种操作是家常便饭,所以我们可能会厌烦每次都输密码
所以我们可以先写个shell脚本实现自动登陆,附带代码如下,阅读代码可能要了解下expect工具

然后还有一种实现的方式,就是讲自己密钥对里面的公钥放在远程主机的.ssh 文件夹下面的authorized_keys文件中,
我们知道,我们这种远程登陆是基于ssh, 所以就有密钥对这个概念了,如果大家对密钥不是很理解,可以参考下我之前关于
数字签名的博文,但是要比较深刻理解的可能需要参考更多的资料,这里推荐下大家百度下阮一峰的博客

首先,在自己当前用户的主目录下查找有没有.ssh这个目录,如果没有可能需要生成密钥对了
在终端敲下指令
ssh-keygen -t rsa
会在当前用户的主目录生成.ssh文件夹,文件夹中有id_rsa(私钥),和id_rsa.pub(公钥)两个文件
我们要做的就是ssh远程登陆到远程主机,将我们的公钥放到远程主机的.ssh目录下的authorized_keys文件中
这样以后我们就可以不需要密码就实现远程登陆了