远程搭建ssh服务(eight day)

一、搭建ssh服务的准备

1、安装nodejs服务

安装eqel镜像(有没有)

[root@oneday ~]# ls /etc/yum.repos.d/

[root@oneday ~]# yum list | grep nodejs

[root@oneday ~]# yum -y install nodejs.x86_64

[root@oneday ~]# node -v

nodejs是一个运行环境,和javajdk运行换进格式一样的

安装完成之后,使用node -v查看版本

2、搭建简易服务器的环境

(1)安装包管理器

[root@oneday ~]# yum -y install npm
[root@oneday ~]# npm -v

(2)npm设置国内镜像:

[root@oneday ~]# npm config set registry https://registry.npmmirror.com   #淘宝的镜像站

(3)安装vue的脚手架软件:

[root@oneday ~]# npm install -g @vue/cli -g    #-g表示全局安装

[root@oneday ~]# find / -name "vue"

[root@oneday ~]# /usr/local/bin/vue -V

以上是用使用npm(nodejs包管理器)安装软件

(4)使用vue脚手架创建一个前端项目

在当前目录创建vuhtm1000目录,程序员就可以在这个文件中开发前端页面

[root@oneday ~]# /usr/local/bin/vue create vuehtm1000
#进去后选择第三个,然后选择router和vuex,然后一直点回车

(5)启动前端项目 

[root@oneday ~]# cd vuehtm1000      #进入到项目的目录 
[root@oneday vuehtm1000]# npm run serve

(6)复制第二个地址用本机浏览器访问

(7)构建项目

[root@oneday vuehtm1000]# npm run build   #构建静态的html项目

(8)将这些静态文件部署到nginx的html

[root@oneday vuehtm1000]# find  / -name "html" -type d    #找到nginx的html
/root/Python-3.12.4/Lib/html
/usr/lib64/python2.7/site-packages/lxml/html
/usr/share/doc/pam-1.1.8/html
/usr/share/doc/pcre-devel-8.32/html
/usr/share/nginx/html
/usr/local/py3124/lib/python3.12/html
[root@oneday vuehtm1000]# cp -R ./dist/* /usr/share/nginx/html

(9)启动nginx

[root@oneday vuehtm1000]# systemctl restart nginx

[root@oneday vuehtm1000]# nginx -s reload

二、远程管理ssh服务免密登陆 

1、ssh加密算法

des : 对称的公钥加密算法,安全低,数据传输速度快;使用同一个密钥进行加密或解密

ras : 非对称的公钥加密算法,安全,数据传输速度慢,ssh默认的加密算法

公钥:用于加密  保障不是明文传输

私钥: 用于解密  将加密的文件解析成明文

2、基于用户密码的认证

[root@oneday vuehtm1000]# netstat -lntup | grep sshd

 #ssh商用收费的对安全负责
 #当前系统默认安装的是openssh
 #xshell也是使用ssh服务远程管理服务器的

[root@twoday ~]#systemctl status sshd

[root@twoday ~]#systemctl stop sshd

[root@twoday ~]#  yum -y install bash-completion-extras.noarch

三、搭建ssh服务

1、安装ssh服务(需要安装三个)

(1)openssh

(2)ssh.server

(3)ssh-client

2、关闭防火墙与selinux(不关selinux导致sshd的端口无法修改)

[root@oneday ~]# systemctl stop firewalld

[root@oneday ~]# systemctl disable firewalld

[root@oneday ~]# setenforce 0

[root@oneday ~]# vim /etc/selinux/config

[root@twoday ~]# ssh -lroot -p22 192.168.1.25

[root@oneday ~]# rpm -qa|grep openssh   #检查是否安装openssh
openssh-clients-7.4p1-16.el7.x86_64
openssh-server-7.4p1-16.el7.x86_64
openssh-7.4p1-16.el7.x86_64
[root@oneday ~]# yum list installed |grep openssh
openssh.x86_64                         7.4p1-16.el7                    @anaconda
openssh-clients.x86_64                 7.4p1-16.el7                    @anaconda
openssh-server.x86_64                  7.4p1-16.el7                    @anaconda

3、查找ssh.config文件位置

[root@oneday ~]# ls /etc/ssh

[root@oneday ~]# rpm -ql openssh-clients

4、修改ssh服务端的配置文件

修改配置文件 ,不允许root账户远程登陆

[root@oneday ~]# vim /etc/ssh/sshd_config

    #38行(不允许root账户远程登录)

[root@oneday ~]# systemctl restart sshd     #重启服务

[root@twoday ~]# useradd zhangsan
[root@twoday ~]# passwd zhangsan
更改用户 zhangsan 的密码 。
新的 密码:
无效的密码: 密码包含用户名在某些地方
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

换另外一台虚拟机进入
[root@oneday ~]# ssh -l zhangsan 192.168.1.15

5、sshd服务管理

systemctl restart sshd => 重启
systemctl status sshd => 状态
systemctl stop sshd => 停⽌
systemctl start sshd => 启动
systemctl enable sshd => 开机⾃启动
systemctl disable sshd => 开机不⾃启
ps -ef |grep sshd => 进程
netstat -tnlp |grep sshd => 端⼝
ss -naltp |grep sshd

三、ssh实操

1、创建用户并设置密码

 [zhangsan@oneday ~]$ su
密码:
[root@oneday zhangsan]# useradd lisi
[root@oneday zhangsan]# passwd lisi
更改用户 lisi 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@oneday zhangsan]# 

[zhangsan@oneday ~]$ ssh -llisi 192.168.8.136

lisi@192.168.8.141's password: 
[lisi@oneday ~]$

[root@oneday ~]# ls -l /home/

2、创建共享目录

[root@oneday ~]# mkdir /code/
[root@oneday ~]# groupadd code  

3、将zhangsan,lisi都添加到附加组code中

[root@oneday ~]# usermod -g code zhangsan 
[root@oneday ~]# usermod -g code lisi

4、为code目录添加code组的权限

[root@oneday ~]# chgrp -R code /code/   //更目录的文件所属组

[root@oneday ~]# chmod -R g+w /code/   //给所属组加写权限

5、测试用户权限(只有code目录下可以创建)

[zhangsan@oneday root]$ touch /opt/zhangsan
touch: 无法创建"/opt/zhangsan": 权限不够
[zhangsan@oneday root]$ touch /code/zhangsan
[zhangsan@oneday root]$ 

6、更改ssh默认端口

[root@oneday ~]# vim /etc/ssh/sshd_config

  17行

7、重启ssh服务 

[root@oneday ~]# systemctl restart sshd

8、ssh连接服务器,如果服务端口是22,不用添加-p选项,如果不是22端口,就必须添加-p选项

ssh -p9999 lisi@192.168.8.141

ssh -p -llisi 192.168.8.141

[root@twoday ~]# ssh -llisi -p9999 192.168.8.141
lisi@192.168.8.141's password: 
Last login: Wed Jul 17 14:51:13 2024 from b
[lisi@oneday ~]$ 

9、安装pwgen密码生成工具

[root@oneday ~]# yum -y install pwgen

使用pwgen生成随机密码
[root@oneday ~]# pwgen -cnBs1 10 1
3yvXuVPMLM

10、pwgen密码生成器的使用

pwgen --help

用法:pwgen 选项参数 长度 生成个数

 四、ssh服务补充

1、scp命令(上传需要注意权限问题,没有权限的目录无法上传)

主要功能:用于Linux系统与Linux系统之间进行文件的传输(上传、下载)

上传:

scp [选项]   本地文件路径   远程用户名@远程服务器的IP地址:远程文件存储路径
-r:递归上传,主要针对文件夹
-P:更换了SSH服务的默认端口必须使用-P选项

C:\Users\89765>scp -P9999 D:\简历模板\韩登隆_最新版简历.docx zhangsan@192.168.8.141:~

下载:

# scp [选项]   远程用户名@远程服务器的IP地址:远程文件路径 本地文件存储路径
-r:递归上传,主要针对文件夹
-P:更换了SSH服务的默认端口必须使用-P选项

2、踢出用户

查看当前在线用户

[root@oneday ~]# who
root     pts/0        2024-07-17 14:01 (192.168.8.1)
wangwu   pts/1        2024-07-17 16:14 (192.168.8.136)

踢出某个用户
[root@oneday ~]# pkill -kill -t pts/1

3、SSH免密登录的具体实现

SSH免密的实现思路一共分为三个步骤(三步走)

第一步:在A主机针对某个账号(tom或jerry)生成公钥与私钥

第二步:使用某些方法把公钥发送到B主机中,然后追加到authorized_keys文件中

第三步: 测试是否实现免密登录

☆方法一:比较常用(tom)

在A主机针对某个账号生成公钥与私钥

# ssh-keygen

(1)随便找个账户执行ssh-keygen按三次回车,会在当前和用户的家目录下
~/.ssh/id_res 私钥

~/.ssh/id_rsa_pub 公钥

[root@oneday ~]# su zhangsan
[zhangsan@oneday root]$ ssh-keygen   生成密钥对

[zhangsan@oneday root]$ cd
[zhangsan@oneday ~]$ ls ./.ssh/
id_rsa  id_rsa.pub  known_hosts
[zhangsan@oneday ~]$ ls ./.ssh/ -l
总用量 12
-rw------- 1 zhangsan code 1675 7月  17 16:17 id_rsa
-rw-r--r-- 1 zhangsan code  392 7月  17 16:17 id_rsa.pub
-rw-r--r-- 1 zhangsan code  175 7月  17 14:49 known_hosts

[zhangsan@oneday ~]$ ssh-copy-id root@192.168.8.136   //需要密码
[zhangsan@oneday ~]$ ssh -lroot 192.168.8.136     //免密登录

[root@twoday ~]# ls ./.ssh/
authorized_keys  known_hosts

  • 18
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值