Linux下sshd服务及服务管理命令详解
sshd
ssh为secure shell的缩写,是应用层的安全协议。ssh是目前较可靠,专为远程登陆会话和其他网络服务提供安全性的协议。利用ssh协议可以有效防止远程管理过程中的信息泄露问题。
openssh-server
功能:让远程主机可以通过网络访问sshd服务,开始一个安全shell
客户端连接方式
ssh 远程主机用户@远程主机ip 先rm -rf /root/.ssh/清掉之前的配置
ssh 远程主机用户@远程主机ip -x
调用远程主机图形工具
ssh 远程主机用户@远程主机ip command直接在远程主机执行某条命令
sshkey加密
基于口令的安全认证
只要你知道自己帐号和口令,就可以登陆到远程主机。但会出现“中间人”攻击
ssh remoteuser@remotehost
ssh remoteuser@remotehost hostname
基于密匙的安全验证
你必须为自己创建一对密匙,把公匙放在需要访问的服务器上。
如果你要连接到ssh服务器上,客户端软件就会向服务器发出
请求,请求用你的密匙进行安全验证.服务器受到请求之后,先
在该服务器上你的目录下寻找你的公匙,然后把它和你发送过
来的公匙进行比较。如果两个密匙一致,服务器就用公用密匙加
密“质询”(challenge)并把它发送给客户端软件。客户端软
件收到“质询”之后就可以用你的私人密匙解密再把它发送给服务器
1.生成公钥私钥
?1 2 3 4 | ssh -keygen ##生成公钥私钥工具 ls /root/ . ssh / id_rsa ##私钥,就是钥匙 id_rsa.pub ##公钥,就是锁 |
2.添加key认证方式
?1 2 3 4 5 6 | ssh -copy- id -i /root/ . ssh /id_rsa .pub root@172.25.254.101 ssh -copy- id ##添加key认证方式的工具 -i ##指定加密key文件 /root/ . ssh /id_rsa .pub ##加密key root ##加密用户为root @172.25.254.101 ##被加密主机ip |
3.分发钥匙给client主机
?1 | scp /root/ . ssh /id_rsa root@172.25.254.201: /root/ . ssh / |
4.测试
?1 | ssh root@172.25.254.101 ##通过id_rsa直接连接不用输入用户密码 |
服务端
客户端
第一次没有密钥,需要密码
服务端发送密钥给客户端
无需密码即可远程登陆
提升openssh的安全级别
1.openssh-server配置文件
?1 | vim /etc/ssh/sshd_config |
78 passwordauthentication yes|no ##是否开启用户密码认证,yes为支持no为关闭
48 permitrootlogin yes|no ##是否允许超级用户登录
49 allowusers student westos
##用户白名单,只有在名单出现的用户可以使用sshd建立shell
50 denyusers westos ##用户黑名单
2.控制ssh客户端访问
?1 | vim /etc/hosts .deny sshd:all ##拒绝所有人链接sshd服务 |
系统服务的控制
1.systemd
系统初始化程序,系统开始的第一个进程,pid为1
2.systemctl 命令
?1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | systemctl list- units ##列出当前系统服务的状态 systemctl list-unit-files ##列出服务的开机状态 systemctl status sshd ##查看指定服务的状态 systemctl stop sshd ##关闭指定服务 systemctl start sshd ##开启指定服务 systemctl restart sshd ##重新启动服务 systemctl enable sshd ##设定指定服务开机开启 systemctl disable sshd ##设定指定服务开机关闭 systemctl reload sshd ##使指定服务重新加载配置 systemctl list-dependencies sshd ##查看指定服务的依赖关系 systemctl mask sshd ##冻结指定服务 systemctl unmask sshd ##启动服务 systemctl set -default multi-user.target ##开机不开启图形 systemctl set -default graphical.target ##开机启动图形 setterm ##文本界面设定color vga=ask |
3.服务状态
?1 | systemctl status 服务名称 |
active(running) ##系统服务已经初始化形成,加载过配置;正有一个或多个程序正在系统中执行;vsftpd就是这种模式
active(exited) ##仅执行一次就正常结束的服务;目前并没有任何程序正在系统中执行
active(waiting) ##正在执行当中;不过还得再等待其他事件才能继续处理
inactive ##服务关闭
enable ##服务开机启动
disable ##服务开机不自启
以上所述是小编给大家介绍的linux下sshd服务及服务管理命令详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:https://blog.csdn.net/qq_36016375/article/details/88957134
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。