Linux远程连接与sshd服务安全设定

1.远程连接:
首先设置ip:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
设置好之后,先ping一下IP 看能不能通
ssh root@172.25.13.103 ##表示的是:连接ip为172.25.13.103的root用户

2.系统控制命令
系统控制命令的查看相关参数如下表

systemctl服务控制命令
systemctl status sshd查看服务状态 inactive(不可用),active(可用)
systemctl start sshd开启服务
systemctl stop aahd关闭服务
systemctl restart sshd重启服务
systemctl reload sshd重新加载服务配置
systemctl enable sshd设置开机重启时开启服务
systemctl disable sshd设置开机重启时不会自起服务
systemctl list-unit-files列出所有服务开机启动时的状态
systemctl mask sshd表示sshd服务已经被锁定
systemctl unmask sshd表示sshd服务已经被解锁
systemctl set-default multi-user.target设定系统启动级别为多用户级别(无图形)
systemctl set-default graphical.target设定系统启动级别为图形模式

(1)查看服务状态 inactive(不可用),active(可用)
在这里插入图片描述
(2) 关闭服务
在这里插入图片描述
(3)开启服务在这里插入图片描述
(4)重启服务
在这里插入图片描述

(5) 设置开机重起时不会自起服务在这里插入图片描述

3.sshd的服务
sshd全称为 secure shell
可以通过网络在远程主机中开启shell的服务
客户端软件:sshd
连接方式:
1)ssh username@ip ## 文本模式的连接
2)ssh username@ip -X ## 可以在连接成功后开启图形
在这里插入图片描述
注意:1.在第一次连接陌生主机时,要生成认证文件/root/.ssh/know_host,所以会询问是否建立,需要键入yes,此后在连接此台主机时,只要认证文件存在,就不需要再次输入yes。
远程复制: scp file root@ip:dir ##上传
scp root@ip:file dir ##下载
在这里插入图片描述
在这里插入图片描述
4.sshd的key认证
ssh-keygen 生成密钥的命令
在这里插入图片描述
在生成密钥的时候会让你输入三次的指令:
1.指定保存加密字符的文件(使用默认)
2.设定密码(使用空密码)
3.确认密码(空格 就行)
建立完成后可以使用 ls /root/.ssh/ 来查看是否生成
在这里插入图片描述
可以看到公钥(id_rsa.pub)与私钥(id_rsa)
首先:加密
ssh-copy-id -i /root/.ssh/id_rsa.pub root@172.25.62.251
在这里插入图片描述
然后:修改
vim /etc/ssh/sshd_config 将第78行的yes改成no
在这里插入图片描述
修改完之后还需要重启一下服务:
systemctl restart sshd.service
再试一下连接:ssh root@172.25.62.251
在这里插入图片描述
此时,使用远程连接已经被权限拒绝,因为我们已经进行了加密,要想再次连上就得给他分发钥匙,这样就能成功连接了。

给172.25.62.250分发钥匙:
scp /root/.ssh/id_rsa root@172.25.62.250:/root/.ssh/
在这里插入图片描述然后在连接172.25.62.251
在这里插入图片描述连接成功了。

5.sshd的安全认证
/etc/ssh/sshd_config
用vim进入这个文件后就可以更改ssh服务的安全设定
78 PasswordAuthentication yes|no 是否允许用户通过登录系统的密码做sshd的认证
48 PermitRootLogin yes|no 是否允许root用户通过sshd服务的认证
我们先试一下:在这里插入图片描述
现在能连上251这台机子,
接着vim /etc/ssh/sshd_config 在第48行改不允许通过认证:在这里插入图片描述
改完后记着重启服务:systemctl restart sshd.service

然后在尝试连接:在这里插入图片描述
现在发现Permission denied 权限拒绝了。
但是用其他用户还可以连接:在这里插入图片描述
发现student用户还可以连上。
还可以在这个文件里设置黑白名单:
Allowusers 用户名 ##设定用户白名单,白名单中的用户可以使用sshd
Denyusers 用户名 ##设定用户黑名单,黑名单出现的用户不可以使用sshd
6.添加sshd的登陆信息
我们可以在我们的主机上添加一些登陆信息,这样别人在登陆我们的主机的时候可以看到这些登陆信息。
vim /etc/motd 编辑这个文件就可以了
在这里插入图片描述
然后退出保存,
在这里插入图片描述
其他人连接时就会出现编辑的这个

7.用户的登录审计

w查看正在使用当前系统的用户
w -f查看使用来源
w -i显示IP
last查看使用过并退出的用户信息
lastb查看试图登陆但没有成功的用户

正在使用当前系统的用户:在这里插入图片描述

查看使用过并退出的用户信息 :在这里插入图片描述
查看试图登陆但没有成功的用户在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/542203.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

rabbitmq 同步策略_RabbitMQ高可用方案总结

RabbitMQ的集群方案有以下几种:1.普通的集群exchange,buindling再所有的节点上都会保存一份,但是queue只会存储在其中的一个节点上,但是所有的节点都会存储一份queue的meta信息。因为这样有两个好处:1)存储空间。如果每…

一个简单的封ip规则

2019独角兽企业重金招聘Python工程师标准>>> 一个简单通过nginx日志封ip规则(仅仅自己方便使用) #!/bin/bash #Version:1.0 #Date:2016-08-09 #作用:防刷IP地址,解封蜘蛛,解封5天前封的IP地址function deny () { Date$(date "%F-%H-%M&q…

c程序预处理器的设计与实现_C预处理器-能力问题与解答

c程序预处理器的设计与实现C programming Pre-processor Aptitude Questions and Answers: In this section you will find C Aptitude Questions and Answers on Pre-processor topics like #define, #undef, #if, #endif etc. C编程预处理程序能力问题和解答:在本…

系统日志管理

1 查看系统中的日志 rsyslog 此服务是用来采集系统日志的,他不产生日志,只是起到采集作用 2 rsyslog 的管理 /var/log/messages服务信息日志/var/log/secuer系统登陆日志/var/log/cron定时任务日志/var/log/maillog邮件日志/var/log/boot.log系统启动日…

pythonassertbug_还在 Bug 不断?不妨试试这 2 个装X技巧

原标题:还在 Bug 不断?不妨试试这 2 个装X技巧作者 | luanhz来源 | 小数志(ID:Datazhi)程序员每天遇到 bug 就像喝水吃饭一样稀松平常,关键在于怎么高效而不失优雅的面对这些 bug!所以,你还在固执的使用 tr…

iOS10 UI教程视图的边界与视图的框架

2019独角兽企业重金招聘Python工程师标准>>> iOS10 UI教程视图的边界与视图的框架 iOS10 UI视图的边界 在视图的几何形状中我们提到了视图属性中的一部分属性可以将定义的视图绘制在屏幕上。其中典型的3个属性为边界属性、框架属性以及中心位置属性。 bounds表示的就…

Java System类runFinalization()方法及示例

系统类runFinalization()方法 (System class runFinalization() method) runFinalization() method is available in java.lang package. runFinalization()方法在java.lang包中可用。 runFinalization() method is used to run the finalize() methods of any object that are…

Linux中远程文件的传输

1. scp命令 scp file userip:/dir 把自己主机的文件远程复制到其他主机 scp userip:/file dir 把其他主机的文件远程复制到当前主机 注意:要关闭接受端的防火墙 把主机的file远程复制到IP为172.25.254.117的root用户的Desktop 把IP为172.25.254.117的root用户Deskt…

svn: Can't convert string from 'UTF-8' to native

详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt227 svn 版本库中有文件是以中文字符命名的,在 Linux 下 checkout 会报错: svn: Cant convert string from UTF-8 to native encoding 然后 checkout 程序就退出了&#xff…

引入antd组件样式_个人作品:一个技术栈koa2+ mysql+react + antd的个人博客

前言此项目是个人博客,有前端界面后台管理系统;目的是当做react和node的练手项目,同时还可以了解到服务器nginx部署web站点以及备案和域名的基本操作流程。项目预览地址https://www.lxsblog.cn​www.lxsblog.cnGitHub地址LinWeb/blog​github…

Java ObjectOutputStream writeLong()方法与示例

ObjectOutputStream类writeLong()方法 (ObjectOutputStream Class writeLong() method) writeLong() method is available in java.io package. writeLong()方法在java.io包中可用。 writeLong() method is used to write the given 8 bytes long value. writeLong()方法用于写…

浅谈Jfinal急速开发框架

2019独角兽企业重金招聘Python工程师标准>>> 使用Jfinal一段时间了,记得当初14年吧,为了建立一个简单的门户网站,想找个轻量型的急速开发框架,然后搜到Jfinal,然后用了一段时间后,确实不错, 现在吧,随着时间的推移,作者对JFinal的版本迭代也是一直在努力,一直朝着优…

make 怎么降级_Ubuntu 中将 make 的版本降低

最新的 Ubuntu 版本使用的是 make 版本是 4.0.在编译 Android4.4 源码包时,由于 make 版本过高,命令提示行会提示编译 Android4.4 源码包需要 make 的版本为 3.81 或 3.82.build/core/main.mk:42: ****************************************************…

Java ObjectOutputStream writeChar()方法与示例

ObjectOutputStream类writeChar()方法 (ObjectOutputStream Class writeChar() method) writeChar() method is available in java.io package. writeChar()方法在java.io包中可用。 writeChar() method is used to write 2 bytes of a character value. writeChar()方法用于写…

虚拟机的管理

我们采用虚拟机的原因是什么呢,很简单就俩字: 节能 1. 管理虚拟机的命令: virt-manager开启虚拟机管理器virsh list显示正在运行的虚拟机virsh list --all查看所有虚拟机virsh start desktop打开虚拟机virsh shutdown desktop正常关闭虚拟机…

mybatis对java自定义注解的使用——入门篇

转自;https://www.cnblogs.com/sonofelice/p/4980161.html 1. 最近在学习spring和ibatis框架。 以前在天猫实习时做过的一个小项目用到的mybatis,在其使用过程中,不加思索的用了比较原始的一种持久化方式: 在一个包中写一个DAO的接…

Java BigDecimal toBigIntegerExact()方法(带示例)

BigDecimal类的toBigIntegerExact()方法 (BigDecimal Class toBigIntegerExact() method) toBigIntegerExact() method is available in java.math package. toBigIntegerExact()方法在java.math包中可用。 toBigIntegerExact() method is used to convert this BigDecimal int…

Linux中的软件管理

1. 使用已有的网络安装资源安装软件 cd /etc/yum.repos.d/ (移动到yum源指向的文件配置目录下) vim westos.repo (新建文件,yum下后缀必须为.repo) 编辑这个文件里面写 [redhat] (软件仓库名称) namefirefox &#x…

楚留香ai人脸识别_戴口罩居然也能人脸识别?这些AI黑科技真的藏不住了.........

当人工智能遇见影像技术,将会释放出多少意想不到的巨大能量?「喔图知图实验室」瞄准当下的影像痛点,持续发力升级AI黑科技,带来两大必杀技——人脸识别再度升级、AI智能旋转校正。戴口罩也能识别——人脸识别升级戴口罩人脸识别如…

android--------Popupwindow的使用

2019独角兽企业重金招聘Python工程师标准>>> PopupWindow在Android.widget包下,项目中经常会使用到PopupWindow做菜单选项, PopupWindow这个类用来实现一个弹出框,可以使用任意布局的View作为其内容,这个弹出框是悬浮…