linux菜鸟基础学习 (四) openssh-server

openssh-server

1.openssh-server

功能:让远程主机可以通过网络访问sshd服务,开始一个安全shell

2.客户端连接方式

ssh 远程主机用户@远程主机ip
[[email protected] ~]# ssh [email protected]
The authenticity of host ‘172.25.0.11 (172.25.0.11)‘ can‘t be established.
ECDSA key fingerprint is eb:24:0e:07:96:26:b1:04:c2:37:0c:78:2d:bc:b0:08.
Are you sure you want to continue connecting (yes/no)? yes ##连接陌生主机时需要建立认证关系
Warning: Permanently added ‘172.25.0.11‘ (ECDSA) to the list of known hosts.
[email protected]‘s password: ##远程用户密码
Last login: Mon Oct 3 03:13:47 2016
[[email protected] ~]# ##登陆成功
[[email protected] ~]#touch file
[[email protected] ~]#gedit file2 报错
可以在server虚拟机桌面下touch file,发现可以建立。但是gedit file2时发现报错。

ssh 远程主机用户@远程主机ip -X ##调用远程主机图形工具
ssh 远程主机用户@远程主机ip command ##直接在远程主机运行某条命令

练习:

1.ssh [email protected] ##在desktop虚拟机(IP:172.25.77.11)上进入server虚拟机(IP:172.25.77.88)
[[email protected] ~]# ##登陆成功
[[email protected] ~]#touch file
[[email protected] ~]#gedit file2 报错
可以在server虚拟机桌面下touch file,发现可以建立。但是gedit file2时发现报错。
[[email protected] ~]#exit

2.ssh [email protected] -X ##就可以gedit了

3.ssh [email protected] date ##在desktop虚拟机(IP:172.25.77.11)上显示server虚拟机(IP:172.25.77.88)的时间

4.ssh [email protected] rm -fr /root/Desktop/ * ##在desktop虚拟机(IP:172.25.77.11)上删除server虚拟机(IP:172.25.77.88)/root/Desktop 里的文件和目录

3.sshkey加密

1.在server虚拟机生成锁和钥匙
[[email protected] ~]# ssh-keygen ##生成公钥私钥工具
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):[enter] ##加密字符保存文件(建议用默认)
Created directory ‘/root/.ssh‘.
Enter passphrase (empty for no passphrase): [enter] ##密钥密码,必须>4个字符
Enter same passphrase again: [enter] ##确认密码
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
ab:3c:73:2e:c8:0b:75:c8:39:3a:46:a2:22:34:84:81 [email protected]
The key‘s randomart image is:
+--[ RSA 2048]----+
|o |
|E. |
|.. |
|. . o |
|.o. . S |
|oo.o o . |
|+ =. . . |
|o. oo.+.. |
| ..o
. |
+-----------------+
[[email protected] ~]# ls /root/.ssh/
id_rsa id_rsa.pub
id_rsa ##私钥,就是钥匙
id_rsa.pub ##公钥,就是锁

2.给server虚拟机上锁
[[email protected] ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
3.把钥匙给desktop虚拟机的root用户
[[email protected] ~]# scp /root/.ssh/id_rsa [email protected]:/root/.ssh/

4.测试
另外一台虚拟机的有钥匙的root用户,以root身份登陆上锁虚拟机不需要密码
[[email protected] ~]# ssh [email protected] ##通过id_rsa直接连接不需要输入用户密码
Last login: Mon Oct 3 03:58:10 2016 from 172.25.0.250
[[email protected] ~]#
另一台虚拟机的无钥匙的student用户,以root的身份登陆上锁的虚拟机也是需要密码的

4.提升openssh的安全级别

1.openssh-server配置文件
/etc/ssh/sshd_config
78 PasswordAuthentication yes|no ##是否开启用户密码认证,yes为支持no为关闭
48 PermitRootLogin yes|no ##是否允许超级用户登陆
49 AllowUsers student westos ##用户白名单,只有在名单中出现的用户可以使用sshd建立shell
50 DenyUsers westos ##用户黑名单

练习:

在server虚拟机上 vim /etc/ssh/sshd_config
78 PasswordAuthentication no ##关闭用户密码认证
systemctl restart sshd.service ##重启sshd服务
在Desktop虚拟机上以student身份(因为student身份是无钥匙的)
su - student
ssh [email protected] 会显示Permission denied,因为Desktop虚拟机上student身份无钥匙,并且server虚拟机关闭了用户密码认证。




在server虚拟机上 vim /etc/ssh/sshd_config
48 PermitRootLogin no ##不允许超级用户登陆
78 PasswordAuthentication yes ##开启用户密码认证
systemctl restart sshd.service ##重启sshd服务
在Desktop虚拟机上以student身份(因为student身份是无钥匙的)
su - student
ssh [email protected] 会让你输root密码
然后会显示Permission denied,因为不允许server虚拟机的用户以超户的身份登陆Desktop虚拟机



如果既不允许超级用户登陆又关闭用户密码认证,不会让你输入密码,
直接显示Permission denied,看不出效果。
78 PasswordAuthentication no ##关闭用户密码认证
48 PermitRootLogin no ##不允许超级用户登陆

2.控制ssh客户端访问

vim /etc/hosts.deny
sshd:ALL ##拒绝所有人链接sshd服务

vim /etc/hosts.allow
sshd:172.25.254.250 ##允许250主机链接sshd

sshd:172.25.254.250, 172.25.254.180 ##允许250和180链接

sshd:ALL EXCEPT 172.25.254.200 ##只不允许200链接sshd

3.ssh登陆提示修改该
vim /etc/motd ##显示登陆后字符

hello world ##在登陆后就会显示这个字符

小知识点

清空.ssh/目录下的内容的两种方法:
1.cd /root/.ssh
rm -fr
2.>/root/.ssh/

登陆对方主机的两个方式:
1.密码
2.免密登陆,需要有钥匙。

原文地址:http://blog.51cto.com/14016326/2306617

时间: 2024-11-05 16:24:40

linux菜鸟基础学习 (四) openssh-server的相关文章

linux菜鸟基础学习 (四)

一.进程 1.进程定义: 进程就是cpu未完成的工作. 2.ps命令 psa ##关于当前环境的所有进程x| -A ##所有进程f ##显示进程从属关系e ##显示进程调用环境工具的详细信息l ##长列表显示进程的详细信息ps ax -o %cpu,%mem,user,group,comm,nice,pid,stat ##指定显示进程的某些信息%cpu ##显示进程cpu负载%mem ##显示进程内存负载user ##进程用户group ##进程组comm ##进程名称nice ##进程优先级p

linux菜鸟基础学习(二 ) 上篇

一.linux系统结构 首先我们学习linux的系统结构,linux系统中一切皆文件! 由上图,可以看到linux是一个倒树结构linux中所有的东西都是文件这些文件都在系统顶级目录"/" /就是根目录/目录以下为二级目录这些目录都是系统装机时系统自动建立的二级目录的作用/bin ##二进制可执行文件也就是系统命令/sbin ##系统管理命令存放位置/boot ##启动分区,负责系统启动/dev ##设备管理文件/etc ##大多数系统管理文件/home ##普通用户的家目录/lib

linux菜鸟基础学习 (二) 中篇

一.man的使用 man ->>manual ###man是手册缩写man man #####查看man命令的帮助man passwd ###查看passwd命令的帮助 man的级别1 系统命令2 系统接口3 函数库4 特殊文件,比如设备文件5 文件6 游戏7 系统的软件包8 系统管理命令9 内核 man 5 passwd ##查看/etc/passwd文件的帮助man 1 passwd ##查看passwd命令的帮助,1可以省略 man页面的快捷方式上下键 ##向上或向下一行pageup|p

linux菜鸟基础学习 (三)

文件权限 1.文件属性的查看 练习:ls 查看当前目录下的文件和目录ls -l 查看当前目录下的文件和目录属性ll 查看当前目录下的文件和目录属性 stat test 查看文件或者目录的详细信息 ls -l filename-|rw-r--r--.|1| root| root| 46 |Oct 1 05:03 |filename- --------- - ---- ---- -- ------------ -------- 1 2 3 4 5 6 7 8 1."-":文件类型 ##普通

linux菜鸟基础学习 (五) 系统日志

系统日志 1.系统日志默认分类 /var/log/messages ##系统服务及日志,包括服务的信息,报错等等/var/log/secure ##系统认证信息日志/var/log/maillog ##系统邮件服务信息/var/log/cron ##系统定时任务信息/var/log/boot.log ##系统启动信息 2.日志管理服务rsyslog 1.rsyslog负责采集日志和分类存放日志2.rsyslog日志分类vim /etc/rsyslog.conf ##主配置文件服务.日志级别 /存

linux菜鸟基础学习 (六) 网络

linux下的网络配置 1.什么是IP ADDRESS internet protocol ADDRESS ##网络协议地址 ipv4 internet protocol version 4 1.2x32 ip是由32个0和1组成 11111110.11111110.11111110.11111110 = 254.254.254.254 2.子网掩码 用来划分网络区域 子网掩码非0的位对应的ip上的数字表示这个ip的网络位 子网掩码0位对应的数字是ip的主机位 网络位表示网络区域 主机位表示网络

linux菜鸟基础学习 (二) 下篇

1.用户理解 用户就是系统使用者的身份在系统中用户存储为若干窜字符+若干个系统配置文件用户信息涉及到的系统配置文件:/etc/passwd ###用户信息用户:密码:uid:gid:说明:家目录:用户使用的shell/etc/shadow ###用户认证信息用户:密码:最后一次密码修改该时间:最短有效期:最长有效期:警告期:非活跃期:帐号到期日/etc/group ###组信息组名称:组密码:组id:附加组成员/etc/gshadow ###组认证信息/home/username ###用户家目

linux基础学习四

本次继续学习linux基础命令,包括stat.touch.cp.mv.rm.tree.mkdir.rmdir stat 命令格式 stat [OPTION]... FILE... 命令功能 显示文件的时间戳,即访问时间.修改时间和改变时间 stat [OPTION]... FILE...      [[email protected] ~]# stat newfile       File: `newfile'      Size: 0          Blocks: 0          I

Linux菜鸟的学习之法--纯属个人意见

在学习Linux之前,大家应该把自身的条件审视下,多跟一些Linux前辈沟通下,找到适合自己的学习方法.可能在大家的严重觉得Linux的学习比较枯燥,但事实上Linux的学习不是大家想象的那样的. 对于学习,我一直是抱着兴趣和爱好这样的一个方向开始的,并不是为了要学习完毕之后有多么高的收入,个人认为学习应该是纯粹的,不要有太多的包袱和压力,这样才能让个人处在最佳的学习状态! 接下来咱们说下关于整个学习的大致流程(当然这个是我的学习经验,只是分享出来!),在学习Linux之前,我从事过电商销售,网