千家信息网

ssh服务如何为web生产服务器保驾护航

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章将为大家详细讲解有关ssh服务如何为web生产服务器保驾护航,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。场景我们给自己的博客搭建一个站点,配
千家信息网最后更新 2026年11月03日ssh服务如何为web生产服务器保驾护航

这篇文章将为大家详细讲解有关ssh服务如何为web生产服务器保驾护航,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

场景

我们给自己的博客搭建一个站点,配置lnmp/lamp运行环境可以跑起来,差不多就完事了。但是当我们做的是一个中型或者大型项目,在它需要部署到生产服务器上线运营时,账户安全方面需要做些什么?

ssh

安装

apt-get install openssh-server

启动

/etc/init.d/ssh start

使用

ssh  martist@192.168.123.3//ssh远程连接服务器,需要输入用户密码

应用

主机名管理

一个中型甚至大型的的项目,往往需要对多台服务器进行管理,如生产服务器,测试服务器,管理服务器等等。因此需要对每一台服务器的主机名进行管理,通过修改各个服务器的/etc/hostname文件修改本地系统名,重启可以看到。

密钥ssh登录

linux或Mac下生成密钥的命令是 ssh-keygen -t rsa 默认生成路径在家目录的.ssh目录下。id_rsa 文件保存的是本机的私钥,id_rsa.pub文件保存的是公钥。
ifconfig命令查看服务器的IP地址,注意如果你是用的是阿里云ECS,此处查看到的是内网IP而非公网IP。
在被登录的服务器的家目录下的.ssh目录(如果不存在就创建一个)创建一个authorized_keys 文件,并将生成的公钥文件的内容放到里面,就可以在本地使用密钥登陆这台服务器了。

ssh  martist@192.168.123.3//此时不需要输入用户名密码

如果我们关闭密码登陆,转而使用ssh密钥登录,更可以确保服务安全(注意:关闭密码登陆前,一定要确保能够正常使用ssh密钥登陆)。

关闭密码登陆

找到/etc/ssh/sshd_config 修改PasswordAuthentication 属性 yes。
在第52行,yes改为no,禁用密码登陆(慎用)。

详细实战分析

线上:阿里云ECS云服务器 Ubuntu14.04lts

Manager服务器生成ssh密钥

ssh-keygen -t rsa  //一路回车

生成的密钥保存在家目录下,进入.ssh目录下,

ls//查看文件id_rsa id_rsa.pub know_hosts

Manager服务器上在 /etc/hosts 文件里加上重定向的名字,如测试服务器,DB服务器和Manager服务器分别起一个重定向名字便于管理多台web服务器。
修改本地定向网络ip(阿里云的内网ip)的文件

vi /etc/hosts //写入 10.162.48.184 FWEB1//每次在终端输入'FWEB1',就代表'10.162.48.184'。

在mannager服务器上,试一下ssh登录web1服务器

ssh root@FWEB1

退出

exit

在mannager服务器上,试一下文件上传web1服务器

scp  ./id_rsa.pub root@FWEB1:/root

现在还是需要输入密码,不过等一会把密钥加到web服务器上,再从manager登录web服务器,就不需要输入密码了。

在web1服务器,家目录下创建.ssh目录

ssh root@FWEB1 // 输入密码mkdir ~/.ssh

在web1服务器,把id_rsa.pub传递到.ssh/目录下

cat id_rsa.pub >> .ssh/id_rsa.pub

此时,再从id_rsa.pub设置到web服务器(FWEB1)本地.

文件改名

mv id_rsa.pub authorized_keys

给执行权限

chmod 600 ./authorized_keys

退出ssh远程登录

exit

此时回到manager服务器

ssh  root@FWEB1//此时密码不用输就可以进入FWEB1

随便上传个文件,试试

scp know_hosts root@FWEB1:/tmp/

此后,在manager服务器向web服务器,scp传送东西,不需要再输入密码了。

原理:manager服务器私钥自己留着,把公钥给所有的web,DB,备份服务器,就可以便捷管理了。

关闭web服务器的密码登陆

找到/etc/ssh/sshd_config 修改PasswordAuthentication 属性 yes。在第52行,yes改为no,禁用密码登陆。
修改sshd_config文件中ssh端口,ssh端口默认为 22. 把端口号改为1000以上的数值。

默认:Port:22改为:Port 1678

:wq //退出vi编辑器。

reboot //重启生效

ssh登录目的服务器命令

root@FWEB1

有点麻烦?可以创建自己的别名

vi ~/.bash_profile//写入  alias fewb1='ssh root@FWEB1 -p 1678'//(-p 为端口号)

好,:wq 保存退出。

使他生效

source .bash_profile

查看别名

alias

在manager服务器下,把某个文件夹下全部文件推送到web服务器。

scp -p 1678 ./* root@FWEB1:/tmp/ ~~~~
//(需要被传送文件的web服务器有这个文件夹)

把服务器其上的东西上传上去,是这样写, 把web服务器的东西下载到本地,只要把这俩目录倒过来,就可以了。

技巧:

cd ~mkdir sh vi pushcode.sh//在这里写shell脚本

shell脚本的写法,开头'#!',后面是 shell可执行命令的位置。

#!/bin/shscp -p 1678 ./var/www.machuang.name/* root@FWEB1:/var/www/machuang.name

好!:wq 保存推出。

给执行权限

chmod 755 /root/sh/pushcode.sh

Ls查看下

ls /root/sh

此时看到pushcode.sh变成绿色,就对了。以后敲入这段命令,就可以完成上传代码的功能了。

/root/sh/pushcode.sh

就可以执行脚本内的命令了,此时再加一个别名。

cd ~vi .bash_profile//写入  alias pushcode='/root/sh/pushcode.sh'//:wq 保存退出

好,使它生效,否则要重启才能生效。

source .bash_profile

上传代码:

pushcode

这样一个具备业务逻辑的ssh服务使用就展现在你面前了,单一的使用一个工具并不显得立体,多种linux软件和命令有机结合在一起才能迸发出更大的能量。

关于ssh服务如何为web生产服务器保驾护航就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

服务 服务器 文件 密码 目录 密钥 登陆 命令 登录 输入 管理 生成 生产 东西 公钥 内容 别名 脚本 阿里 安全 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技名片 伟宏互联网科技 江苏根荣互联网科技 中资互联网科技 善班互联网科技 广州凡科互联网科技 上海万想互联网科技 中国最先进互联网科技公司 宁波青枫互联网科技有限公司 昭通云南众福互联网科技有限公司 深圳育鹏互联网科技有限公司招聘 高科技互联网发展前景如何 锡山区互联网智能科技产品供应 上海钢联属于互联网科技股吗 中天科技中国工业互联网 互联网科技数字货币 福建互联网展示科技馆设计 艺电能源互联网科技有限公司招聘 互联网科技收购价值 盐城市攀科互联网科技有限公司 互联网高科技 南京欣网互联网络科技有限公司 西安纸贵互联网科技有限公司 中国互联网科技股 互联网下的科技发展 互联网行业科技股 众安科技工业互联网合作 南通创西澳互联网科技有限公司 杭州披云加互联网科技有限公司 互联网科技自媒体灵感
0