Linux系统学习 八、SSH服务—SSH远程管理服务
1、SSH简介
ssh(安全外壳协议)是Secure Shell的缩写,是建立在应用层和传输层基础上的安全协议。传输的时候是经过加密的,防止信息泄露,比telnet(明文传递)要安全很多。
ftp安装(要先加载上光盘镜像文件)
安装的ftp服务器端
启动服务
查看
创建一个新用户
tcpdump抓包工具
安装命令
yum install tcpdump
然后在本地机器上连接虚拟机
应该是有防火墙
iptables -L
默认Windows当中启动的防火墙,21端口没开着
这边使用命令全部关掉,然后重新监听21端口
虽然登录失败了,但是并不影响抓包
用户名:
密码:
2、SSH端口
端口:22
Linux中守护进程:sshd
安装服务:OpenSSH
服务端主程序:/usr/sbin/sshd
客户端主程序:/usr/bin/ssh
3、相关配置文件
服务端配置文件:/etc/ssh/sshd_config
客户端配置文件:/etc/ssh/ssh_config
2、SSH加密原理
对称加密算法
采用单钥密码系统的加密方法,同一个秘钥可以同时用作信息的加密和解密,这种加密方式称为对称加密,也称为单秘钥加密。
非对称加密算法又名“公开秘钥加密算法”,非堆成加密算法需要两个秘钥:公开密钥和私有秘钥。
SSH安全外壳协议(是由非对称加密演变来的)
它仅仅只是保护了数据传输的过程,在发送前和接收后中了木马等就可能获得数据内容。
在用Xshell连接服务器时就会有直观的显示。
3、SSH配置文件
服务器端配置文件
应该还有一个客户端的配置文件(ssh_config)
ssh_config在使用过程中,既是一个客户端也是一个服务端,意思是可以允许别人作为客户端通过22端口访问我,我也可以作为客户端去访问别人。
PermitRootLogin yes 允许root的ssh登录(建议普通用户登录)
PasswordAuthentication yes 建议也改成no
虽然有些设置是被注释掉的,但是事实上有些是默认设置的,注释掉也可以。
一般建议把端口改掉。
日志中等级越高记录的信息越少,等级越低记录的信息越详细。
GSSAPI认证开启后,在用Linux系统管理Linux系统时会有一个验证过程,会等很长时间,需要DNS解析。建议关闭(一般是客户端的配置文件,然后重启service sshd restart)
4、常用SSH命令
SSH远程管理
ssh [用户名@ip]
SCP远程复制
下载:
scp root@192.168.44.2:/root/text.txt
上传:
scp –r /root/123/ root@192.168.44.2/root
5、SSH连接工具
在Windows中用工具远程连接Linux进行管理。
SecureCRT工具
Xshell工具
5、SSH密钥对登录
保护服务器端的SSH
1.改端口
2.防火墙
第一步:创建密钥对,私钥文件:id_rsa,公钥文件:id_rsa.pub(客户机)
第二步:上传公钥文件到SSH服务器(id_rsa.pub)
第三步:导入公钥信息,公钥库文件:~/.ssh/authorized_keys
第四步:使用密钥对验证进行登录
不需要密码登陆,防止了密码被截获的可能,只要保证私钥文件的安全就可以了
步骤一:
客户端:
ssh-keygen –t rsa
服务器:
把公钥上传到服务器端
cat id_rsa.pub >>/root/.ssh/authorized_keys 输出重定向
chmod 600 /root/.ssh/authorized_keys
客户端:
创建普通用户
切换到普通用户
su – user
返回到root
exit
我这边一直是以下这种显示
不管是服务器还是本机的PermitRootLogin yes都改了,但是问题依旧没有解决。
也尝试用普通用户连接,依旧是这种情况。
步骤二
修改服务器ssh配置文件
RSAAuthentication yes 开启RSA验证
PubkeyAuthentication yes 是否使用公钥验证
AuthorizedKeysFile .ssh/authorized_keys 公钥的保存位置
PasswordAuthentication on 禁止使用密码验证登录
步骤三
服务器端关闭SELinux服务
vi /etc/selinux/config
重启系统
服务器端重启ssh服务
service sshd restart
Linux系统学习 八、SSH服务—SSH远程管理服务的更多相关文章
- (笔记)Linux内核学习(八)之定时器和时间管理
一 内核中的时间观念 内核在硬件的帮助下计算和管理时间.硬件为内核提供一个系统定时器用以计算流逝的时间.系 统定时器以某种频率自行触发,产生时钟中断,进入内核时钟中断处理程序中进行处理. 墙上时间和系 ...
- Linux(11):期中架构(3)--- SSH远程管理服务 & ansible 批量管理服务
SSH远程管理服务 1. 远程管理服务知识介绍 # 1.1 SSH远程登录服务介绍说明 SSH是Secure Shell Protocol的简写,由 IETF 网络工作小组(Network Worki ...
- SSH远程管理服务实战
目录 SSH远程管理服务实战 1.SSH基本概述 2.SSH相关命令 3.Xshell连接不上虚拟机 4.scp命令 5.sftp命令 6.SSH验证方式 7.SSH场景实践 8.SH安全优化 9.交 ...
- 五.ssh远程管理服务
01. 远程管理服务知识介绍 1) SSH远程登录服务介绍说明 SSH是Secure Shell Protocol的简写,由 IETF 网络工作小组(Network Working Group)制定: ...
- linux系统下,11款常见远程桌面控制软件
linux系统下,11款常见远程桌面控制软件 一. Grdc 它是一个用GTK+编写的,适用于gnome桌面环境的远程桌面访问软件.看图: 常见功能: 1.提供全屏,窗口化的远程控制.支持高分辨率下的 ...
- Linux系统登录:本地登录与远程登录
安装登录系统的位置可以将登录方式分为两种:本地登录和远程登录.本地登录可以使用图形界面和命令行模式(也称字符界面)两种方式:远程登录可以使用SSH.Telnent.VNC.SFTP 4种方式. 常见的 ...
- Linux系统学习笔记:文件I/O
Linux支持C语言中的标准I/O函数,同时它还提供了一套SUS标准的I/O库函数.和标准I/O不同,UNIX的I/O函数是不带缓冲的,即每个读写都调用内核中的一个系统调用.本篇总结UNIX的I/O并 ...
- Linux-SSH远程管理服务实战
figure:first-child { margin-top: -20px; } #write ol, #write ul { position: relative; } img { max-wid ...
- Linux下 SSH远程管理服务
第1章 SSH基本概述 1.1 SSH服务协议说明 SSH 是 Secure Shell Protocol 的简写,由 IETF 网络工作小组(Network Working Group )制定 在进 ...
随机推荐
- java之不同数据流应用举例
按操作单位的不同分为:字节流(8bit)(InputStream.OuputStream).字符流(16bit)(Reader.Writer) 按数据流的流向不同分为:输入流.输出流 按角色的不同分为 ...
- Laravel 框架对于分表进行统计合并查询的思路
当对数据表进行水平分表之后,若要进行数据统计,往往需要对所有分表一起进行联合查询.在使用 Laravel 框架时,可以利用 Model 类的 setTable 方法对于多个表进行合并查询. 举个例子, ...
- ubuntu安装navicat
ubuntu下安装navicat1.官网下载https://www.navicat.com.cn/download/navicat-premium,不清楚系统是32位的还是64位的,可以用”uname ...
- Delphi CreateProcess 创建一个新的进程和它的主线程
Delphi CreateProcess WIN32API函数CreateProcess用来创建一个新的进程和它的主线程,这个新进程运行指定的可执行文件 CreateProcess百科名片 WIN32 ...
- Python 标准类库-数字和数学模块之decimal使用简介
标准类库-数字和数学模块之decimal使用简介 by:授客 QQ:1033553122 例子 >>>from decimal import * >>>getcon ...
- [css flex布局]实例一,本来还想挺简单的,弄了挺久呢,先写一部分
全是代码,直接拷走吧,看是不怎么好看的 参考:http://www.ruanyifeng.com/blog/search.html?cx=016304377626642577906%3Ab_e9ska ...
- arcgis api for javascript 学习(一) 调用在线发布的动态地图
1.图中显示为arcgis软件中显示的地图文件 2.调用动态地图主要的是知道动态地图的URL地址 3.通过IDE(webstorm)调用动态地图,如图 4.话不多说,直接上代码 <!DOCTYP ...
- Git 自救指南
Git 虽然因其分布式管理方式,不完全依赖网络,良好的分支策略,容易部署等优点,已经成为最受欢迎的源代码管理方式.但是一分耕耘一分收获,如果想更好地掌握 git,需要付出大量的学习成本.即使在各种 G ...
- PHP 生成 UUID 函数
Generate name based md5 UUID (version 3) /** * Generate name based md5 UUID (version 3). * @example ...
- (办公)记事本_Linux的In命令
参考菜鸟教程Linux:https://www.runoob.com/linux/linux-comm-ln.html linux的ln命令. Linux ln命令是一个非常重要命令,它的功能是为某一 ...