关于SSH服务|两台机器之间建立免密通道

ssh:用在linux或者unix的远程控制服务协议 sshd占用22端口

在linux系统下面/etc/ssh文件中 sshd_config文件是服务器端的配置 ssh_config是客户端的配置

ssh的日志文件存放在 /var/log/secure

命令 ssh name@ip -p port +...(这里可以添加需要执行的命令)

例如:ssh [email protected]是在自己的机器上远程连接,以root的身份登录(centos里面默认root都是可以登录的,而在ubantu里面是不允许root用户远程登录的)。其中不指定用户的话是默认当前用户进行远程登录。

设置某些用户不能远程登录:在sshd_config配置文件里 添加 DenyUsers shangsan lisi 再次重启ssh服务之后shangsan、lisi两个用户将不能远程登录。

更改环境变量之后重启ssh服务
1. 通过【service sshd restart】命令重启ssh服务;
2. 通过【systemctl restart sshd.service】命令重启ssh服务。
3. 直接执行/etc/rc.d/init.d/ssh restart

scp命令:远程拷贝 底层通过ssh协议远程连接到另外一台机器上拷贝文件过去。

拷贝文件scp root@ip :文件路径

拷贝文件夹 scp -r root@ip:/boot  /etc/ssh -r (路径)

在mac电脑传文件到虚拟机:macos支持ssh以及scp命令

qixi@qixideMacBook-Pro ~ % scp [email protected]:lianxi/tes.txt  /Users/qixi/Desktop    
#将linux下面的tes.txt文件 拷贝到mac的桌面 

sftp命令: sftp命令是一款交互式的文件传输程序,命令的运行和使用方式与ftp命令相似,但是,sftp命令对传输的所有信息使用ssh加密,它还支持公钥认证和压缩等功能 

sftp name@ip

其中ls是查看远程机器的目录  而!ls查看本地目录  lpwd是查看本地所在当前目录

put上传  get下载

如何在两台机器之间建立免密通道

ssh服务在远程连接时除了有密码认证还有密钥认证

关于密钥认证:

有对称加密算法和非对称加密算法两种,对称加密算法:两方同样的密钥来解密。非对称加密算法:私钥和公钥是成对生成的,这两个密钥是互不相同的

数字签名:识别用户身份(其中也涉及公钥和私钥)

公钥和私钥都是字符串是成对出现的。(具体请参考计算机网络)

免密通道的建立:

1.首先准备两台虚拟机

2. 在客户机上root生成密钥对
ssh-keygen -t rsa'
生成的密钥放在 ~/.ssh/ 目录下面


3. 上传公钥到服务器
ssh-copy-id  -i 公钥文件 (这里可以使用scp命令但是此处使用该命令更为方便)

总结:known_hosts 是自动生成的文件,存放在~./ssh/下面 是存放的ssh连接通过其他服务器的公钥。如果出现了ip地址冲突则会连接不上,解决办法是直接删除掉known_hosts文件。
/Users/qixi/.ssh/id_rsa.
/Users/qixi/.ssh/id_rsa.pub.

这两个是生成的密钥文件 (rsa是一种加密算法)

macos终端查看ip地址的命令 :

猜你喜欢

转载自blog.csdn.net/qq_45675231/article/details/126199873
今日推荐