ssh远程登陆管理
配置远程ssh管理服务
1.安装nodejs服务------简易服务器的环境
在epel镜像合适的情况下安装
若是epel已下载,但镜像查不到,先卸载epel,再创建缓存(yum clean all,yum makecache)再下载回来就好。
yum list|grep nodejs
yum -y install nodejs.x86_64
node -v //查看版本
2.安装包管理器
yum -y install npm
npm -v
3.npm设置国内镜像
npm config set registry https://registry.npmmirror.com
4.安装vue的脚本架软件
npm install @vue/cli -g
find / -name “vue” //找到vue的指令
[root@diyi ~]# find / -name "vue"
[root@diyi ~]# /usr/local/bin/vue -V
以上是使用npm(nodejs包管理器)安装软件
5.使用vue脚本家创建一个前端项目
[root@diyi ~]# /usr/local/bin/vue create vuehtml1000 //在当前目录创建vuehtml1000目录,程序员就可以再这个文件中开发前端页面
[root@diyi ~]# tree vuehtml1000/ //查看该项目
6.启动前端项目
进入到项目目录 cd vuehtml1000
[root@diyi vuehtml1000]# npm run serve
7.[root@diyi vuehtml1000]# npm run build //构建项目
[root@diyi vuehtml1000]# ls
[root@diyi vuehtml1000]# ls ./dist/
[root@diyi vuehtml1000]# find / -name "html" -type d
8.[root@diyi vuehtml1000]# cp -R ./dist/* /usr/share/nginx/html //将构建的项目目录dist目录中的所有文件部署到nginx的html目录中
[root@diyi vuehtml1000]# nginx -s reload
两种加密算法
des 对称加密----共有1条密码本
rsa 非对称加密---有2条密码本
公钥:加密 保障不是明文传输
私钥:解密 将加密的文件解析成明文
计算机的密码就是des加密
查看ssh的端口
netstat -lntup|grep sshd
当前系统默认安装的是opensssh
xshell也是使用ssh服务远程安装服务
//下载指令补全的指令
[root@diyi ~]# yum -y install bash-completion-extras.noarch
搭建ssh服务
0.安装ssh服务
1.Openssh
2.Ssh-server
3.Ssh-client
由于当前系统默认安装的是opensssh所有不再安装openssh
1.准备两台机器
x 用于访问其他主机 192.168.2.12
y 被访问 192.168.2.11
2.关闭防火墙与selinux(不管selinux导致sshd的端口无法修改)-----关闭y机器的
3.[root@y ~]# yum list installed |grep openssh //查看openssh有没有默认安装
如果没有安装进行安装:
Yum -y install openssh
Yum -y install openssh-server
Yum -y install openssh-clients
修改配置文件 不允许root账户远程登录,可以设置其他的账户远程登录
[root@y ~]# vim /etc/ssh/sshd_config
[root@x ~]# ssh -lroot 192.168.2.11
[root@y ~]# useradd zhangsan
[root@y ~]# passwd zhangsan
[zhangsan@y ~]$ su
密码:
[root@y zhangsan]# useradd lisi
[root@y zhangsan]# passwd lisi
[root@x ~]# ssh -zhangsan 192.168.2.11
[root@x ~]# ssh -llisi 192.168.2.11
由于root不能远程登录,我们创建了zhangsan,lisi两个账户,并设置了密码
现在zhangsan,lisi两个账户对y服务器中的code目录进行编辑
将zhangsan,lisi都添加到附属组code(使用groupadd code提前创建好附属组)
Usermod -g code zhangsan
Usermod -g code lisi
为code 目录添加code组的权限
Chgrp -R code /code/ #将code所属组修改为code组
Chmod -R g+w /code/为code目录的组用户加上写的权限
更改ssh默认端口(17行)
1.[root@y ~]# vim /etc/ssh/sshd_config
2.重启sshd服务,关闭防火墙,关闭selinux
Setenforce 0
Systemctl stop firewalld
Systemctl restart ssh
Ssh连接服务器,如果服务端口是22,可以不用-p
如果不是22端口,就需要添加-p选项
[root@x ~]# ssh -llisi -p9999 192.168.2.11
安装pwgen密码生成工具
yum -y install pwgen.x86_64
使用pwgen -cnBs1 10 1生成随机密码
ssh服务补充
Scp
上传
下载
scp指定端口 -P(大写)
ssh 指定端口 -p(小写)
使用的默认端口是22时,不用指定端口
scp上传也要注意用户的权限问题,没有权限的目录无法上传
踢出用户
Pkill -kill -t
SSH免密登录的具体实现
1.在y主机针对某个账号⽣成公钥与私钥
ll ~/.ssh/
2.使⽤ssh-copy-id把公钥⽂件中的内容传输到服务器端的~/.ssh/authorized_keys⽂件中
ssh-copy-id root@192.168.2.12
3.在客户端测试免密登录是否成功
ssh -pxxxx root@ip地址
ssh远程登陆练习
1.新增账号 zhangsan lisi wangwu zhaoliu a b c d
[root@2 ~]# useradd zhangsan
[root@2 ~]# useradd lisi
[root@2 ~]# useradd wangwu
[root@2 ~]# useradd zhaoliu
[root@2 ~]# useradd a
[root@2 ~]# useradd b
[root@2 ~]# useradd c
[root@2 ~]# useradd d
2.设置和账号同名的如果长度不够8位就重复账号
[root@2 ~]# echo zhangsan | passwd --stdin zhangsan
更改用户 zhangsan 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@2 ~]# echo lisi | passwd --stdin lisi
更改用户 lisi 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@2 ~]# echo wangwu | passwd --stdin wangwu
更改用户 wangwu 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@2 ~]# echo zhaoliu | passwd --stdin zhaoliu
更改用户 zhaoliu 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@2 ~]# echo aaa | passwd --stdin a
更改用户 aaa 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@2 ~]# echo bbb | passwd --stdin b
更改用户 bbb 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@2 ~]# echo ccc | passwd --stdin c
更改用户 ccc 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@2 ~]# echo ddd | passwd --stdin d
更改用户 ddd 的密码 。
passwd:所有的身份验证令牌已经成功更新。
3.设置这些账户都有对code目录w的权限
[root@2 ~]# groupadd code
[root@2 ~]# usermod -g code zhangsan
usermod:无改变
[root@2 ~]# usermod -g code lisi
usermod:无改变
[root@2 ~]# usermod -g code wangwu
[root@2 ~]# usermod -g code zhaoliu
[root@2 ~]# usermod -g code a
[root@2 ~]# usermod -g code b
[root@2 ~]# usermod -g code c
[root@2 ~]# usermod -g code d
[root@2 ~]# mkdir /code/
[root@2 ~]# chown root:code /code
验证
[zhangsan@2 ~]$ touch /code/zhangsan
[lisi@2 ~]$ touch /code/lisi
[wangwu@2 ~]$ touch /code/wangwu
[zhaoliu@2 ~]$ touch /code/zhaoliu
[aaa@2 ~]$ touch /code/a
[bbb@2 ~]$ touch /code/b
[ccc@2 ~]$ touch /code/c
[ddd@2 ~]$ touch /code/d
[root@2 ~]# ls /code/
a b c d lisi wangwu zhangsan zhaoliu
4.为以上的用户设置免密登录
假设a为服务器
[lisi@2 ~]$ ssh-keygen
[wangwu@2 ~]$ ssh-keygen
[zhaoliu@2 ~]$ ssh-keygen
[b@2 ~]$ ssh-keygen
[c@2 ~]$ ssh-keygen
[d@2 ~]$ ssh-keyge
[lisi@2 ~]$ ssh-copy-id a@10.0.0.20
[wangwu@2 ~]$ ssh-copy-id -p9999 a@10.0.0.20
[zhaoliu@2 ~]$ ssh-copy-id -p9999 a@10.0.0.20
[b@2 ~]$ ssh-copy-id -p9999 a@10.0.0.20
[c@2 ~]$ ssh-copy-id -p9999 a@10.0.0.20
[d@2 ~]$ ssh-copy-id -p9999 a@10.0.0.20