Linux下的sshd服务及文件传输

1.配置网络:

(1)查询真机IP:

Linux下的sshd服务及文件传输

(2)设置虚拟机IP(实验中IP:server:172.25.254.188;client:172.25.254.178)

Linux下的sshd服务及文件传输

Linux下的sshd服务及文件传输

(3)改主机名(以免实验中搞混)

hostnamectl set-hostname client0.example.com  

hostnamectl set-hostname server0.example.com

分别在虚拟机中执行命令;

注意:退出重新打开shell即可更改成功

2.openssh-server(让远程主机可以通过网络访问sshd服务,开启一个shell)

3.客户端连接:

ssh  远程主机用户@远程主机ip

Linux下的sshd服务及文件传输

-X :开启图形

Linux下的sshd服务及文件传输

4.sshkey加密:

(1)生成公钥和私钥

Linux下的sshd服务及文件传输

(2)添加key认证:

Linux下的sshd服务及文件传输

(3)分发钥匙给client主机:

Linux下的sshd服务及文件传输

(4)检测:

Linux下的sshd服务及文件传输

注意:要关闭server的/etc/ssh/sshd_config配置文件下的

PasswordAuthentication   no(关闭用户密码登录认证,通过**连接,这样对比更加清晰)

原来的配置文件:

Linux下的sshd服务及文件传输

更改之后的:

Linux下的sshd服务及文件传输

5.提升openssh的安全级别:

(每次修改配置文件保存后,记得重启sshd服务;systemctl restart sshd.service这样才会载入之前配置的文件)

openssh-server配置文件: /etc/ssh/sshd_config

PasswordAuthentication yes|no     ##是否开启用户密码认证,yes为支持no为关闭

PermitRootLogin yes|no          ##是否允许超级用户登陆

Linux下的sshd服务及文件传输

(‘#’是注释,去掉'#'系统就可以执行)

Linux下的sshd服务及文件传输

AllowUsers student         ##用户白名单,只有在名单中出现的用户可以使用sshd建立shell

Linux下的sshd服务及文件传输

DenyUsers westos              ##用户黑名单

Linux下的sshd服务及文件传输

6.systemctl命令:

systemctl status sshd      ##查看指定服务的状态

Linux下的sshd服务及文件传输

systemctl stop sshd   ##关闭指定的服务

Linux下的sshd服务及文件传输

systemctl start sshd    ##开启指定服务

systemctl restart sshd   ##重新启动服务

systemctl enable sshd    ##指定服务开机自启

systemctl disable sshd   ##指定服务开机关闭

systemctl mask sshd     ##冻结指定服务

Linux下的sshd服务及文件传输

systemctl unmask sshd    ##启用服务

Linux下的sshd服务及文件传输

systemctl list-units   ##列出当前系统服务的状况

Linux下的sshd服务及文件传输

systemctllist-unit-files   ##列出服务的开机状态

Linux下的sshd服务及文件传输

systemctl reload sshd     ##指定服务重新加载

systemctl list-dependencies sshd   ##查看服务的依赖关系

Linux下的sshd服务及文件传输

systemctl set-default muti-uaser.target sshd   ##开机不开启图形

7.文件传输:

(1)scp:scp  dir|filename 远程主机用户@远程主机IP:dir

-r 目录下的都传输给远程主机

/mnt  ##包含目录/mnt

/mnt/  ##仅传输目录下的文件

Linux下的sshd服务及文件传输

Linux下的sshd服务及文件传输

Linux下的sshd服务及文件传输

(2)rsync(同步):

rsyn  参数  dir|filename 远程主机用户@远程主机IP:dir

rsyn   -r    ##复制目录

     -l    ##不忽略链接

     -p    ##不忽略权限

     -t    ##不忽略时间戳

     -g    ##不忽略组

     -o    ##不忽略普通用户

     -D    ##不忽略块设备

ln -s /mnt/file1 /mnt/westos   ##引入链接

cp -r /dev/pts/ * /mnt      ##复制块设备到/mnt

Linux下的sshd服务及文件传输


Linux下的sshd服务及文件传输


Linux下的sshd服务及文件传输


Linux下的sshd服务及文件传输


Linux下的sshd服务及文件传输


Linux下的sshd服务及文件传输


Linux下的sshd服务及文件传输