如何使用SHC加密Shell脚本

article/2025/10/30 2:10:47
导读如何在Linux环境中加密shell脚本?shell脚本包含密码,不希望其他具有执行权限的人查看shell脚本并获取密码。可以安装使用shc工具,普通用户无法读取shc创建的加密Shell脚本。SHC是指:Shell脚本编译器(Shell Script Compiler)。

环境

Centos8

安装shc

[root@localhost ~]# yum -y install shc

如何使用SHC加密Shell脚本如何使用SHC加密Shell脚本

创建一个shell脚本

下面创建一个脚本文件:

[root@localhost ~]# vim welcome.sh#!/bin/sh
echo "Welcome to linux world"

使用shc加密该脚本文件

如下所示,使用shc加密welcome.sh脚本。

[root@localhost scripts]# shc -v -f welcome.sh 
shc shll=sh
shc [-i]=-c
shc [-x]=exec '%s' "$@"
shc [-l]=
shc opts=
shc: cc   welcome.sh.x.c -o welcome.sh.x
shc: strip welcome.sh.x
shc: chmod ug=rwx,o=rx welcome.sh.x

如何使用SHC加密Shell脚本如何使用SHC加密Shell脚本

  • welcome.sh 是原始的未加密shell脚本
  • welcome.sh.x 是二进制格式的加密shell脚本
  • welcome.sh.x.c 是welcome.sh文件的C源代码。编译该C源代码以创建上面的加密的welcome.sh.x文件。

可以使用file命令查看文件的类型:

[root@localhost scripts]# file welcome.sh
welcome.sh: POSIX shell script, ASCII text executable
[root@localhost scripts]# file welcome.sh.x
welcome.sh.x: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=35e0e2569eca90774e379d6fef51ad6fedf346f5, stripped
[root@localhost scripts]# file welcome.sh.x.c
welcome.sh.x.c: C source, ASCII text
[root@localhost scripts]# 

如何使用SHC加密Shell脚本如何使用SHC加密Shell脚本

执行加密后的shell脚本

现在,让我们执行加密的Shell脚本,确保能够运行:

[root@localhost scripts]# ./welcome.sh.x 
Welcome to linux world

如何使用SHC加密Shell脚本如何使用SHC加密Shell脚本

指定Shell脚本的过期时间

使用shc,您还可以指定到期日期。即在这个到期日期之后,当有人尝试执行Shell脚本时,将收到错误消息。使用shc -e选项创建一个新的加密Shell脚本,指定到期日期。到期日期以dd/mm/yyyy 格式指定。

# 删除之前创建的.x , .x.c文件
[root@localhost scripts]# rm -rf welcome.sh.x*
# 创建带有过期时间的加密脚本
[root@localhost scripts]# shc -e 01/02/2021 -v -f welcome.sh 
shc shll=sh
shc [-i]=-c
shc [-x]=exec '%s' "$@"
shc [-l]=
shc opts=
shc: cc   welcome.sh.x.c -o welcome.sh.x
shc: strip welcome.sh.x
shc: chmod ug=rwx,o=rx welcome.sh.x

如何使用SHC加密Shell脚本如何使用SHC加密Shell脚本
在此示例中,如果有人尝试执行welcome.sh.x脚本文件,会提示已过期。

[root@localhost scripts]# ./welcome.sh.x 
./welcome.sh.x: has expired!
Please contact your provider jahidulhamid@yahoo.com

如何使用SHC加密Shell脚本如何使用SHC加密Shell脚本
如果要指定自定义到期消息,需要加入-m选项。

[root@localhost scripts]# shc -e 01/02/2021 -m "Please contact admin@example.com!" -v -f welcome.sh 
shc shll=sh
shc [-i]=-c
shc [-x]=exec '%s' "$@"
shc [-l]=
shc opts=
shc: cc   welcome.sh.x.c -o welcome.sh.x
shc: strip welcome.sh.x
shc: chmod ug=rwx,o=rx welcome.sh.x

如何使用SHC加密Shell脚本如何使用SHC加密Shell脚本

总结

本文介绍了如何使用shc加密shell脚本。Linux就该这么学


http://chatgpt.dhexx.cn/article/qu0oOhq0.shtml

相关文章

计算机类SCI期刊IF排名

数据基于最新的(2021)科睿唯安数据库,计算机科学及人工智能方向。 1-10名: 11-20名:

爱思唯尔计算机期刊排名,2017影响因子高增长爱思唯尔物理期刊推荐

原标题:2017影响因子高增长爱思唯尔物理期刊推荐 爱思唯尔Elsevier凭借出版高质量物理学期刊百余年的经验,能敏锐发现物理学领域的需求变化,帮助物理学家们脱颖而出,逐步建立完善他们的职业生涯。爱思唯尔物理期刊团队的目标很简单…

计算机中运行Xbrowser,丢失msvcr110.dll

删除那些向文件夹添加dll文件的说法。直接下载两个版本的文件安装即可: 官方下载地址

linux xbrowser 安装包,xmanager安装包

xmanager安装包是一款专门应用于远程遥控的专业软件。使用xmanager安装包用户们就可以对争的同意的设备来远程遥控,对xmanager安装包感兴趣那就快来下载吧。 xmanager安装包介绍 1、一款功能强大、使用方便的会话管理工具,主要供网管使用。 2、可以轻松连…

使用 Xbrowser4远程连接到 CentOS 7

2019独角兽企业重金招聘Python工程师标准>>> 将 gdm 切换到 lightdm 打开终端,切换root帐号 # su - 2.安装 lightdm # yum install lightdm 3.配置 lightdm,如果不存在,则创建之 # vi /etc/lightdm/lightdm.conf [XDMCPServer] e…

linux桌面网络连接是个X,Xbrowser如何运行多个X桌面

Xbrowser的用户界面非常直观。在Xbrowser中,可以使用X显示器控制协议(XDMCP)浏览或连接远程的UniX/LinuX机器。本集就同大家讲讲如何使用Xbrowser运行多个X桌面。 打开多个XDMCP会话的具体操作: 1、运行Xbrowser,Xbrowser中列出了所有连接的主…

【Xmanager】Xbrowser-Xstart远程访问RHEL5.3配置

转自http://www.throwexcept.com/article/1417030564765.html 用Xstart连接Linux远程桌面有一个好处,服务器端不用做什么设置,开启SSH即可。 服务器要有桌面环境和X Window。 用XDMCP连接,服务器端得做一些配置,麻烦。 开始菜单 -…

使用Xmanager - Xbrowser打开远程最小化方式安装的CentOS 7.6的图形化界面

默认开机后进入命令提示符界面: 如果需要使用图形界面,可执行如下操作: 1、关闭CentOS 7.6的firewalld防火墙,或打开177端口 2、安装桌面环境: # yum -y groupinstall "X Window System" # yum -y install g…

【原创】利用xbrowser进行远程连接

1.首先保证本机与目的机能够ping通,这是前提。 确定能够连通后,打开xbrower。 2.邮件点击空白,选择new->XDMCP Session。 3.弹出的属性卡中,在session中填入会话名称,在Host中填入目的机的ip。 4.然后就多出了登录图…

Linux远程终端工具之Xmanager----Xbrowser篇

最近在学习RH401课程,由于在平时都是用SecureCRT来远程连接到服务器进行操作的,可是RH401里面的一些实验是需要在linux图形化界面上鼠标点点的。因为不想在直接在实验机器面前操作,所以就找了找远程终端控制的软件。当时百度找到了Xmanager&a…

Linux远程连接工具Xmanager Xbrowser--Win10远程连接CentOS6.9桌面

为方便日常服务器的管理维护,使用Xmanager远程连接公司服务器,连接方法如下: 环境 服务器:CentOS 6.9 GNOME桌面环境 个人主机:Windows 10专业版 连接步骤 1、在服务器上安装xdm yum install xdm -y 2、修改xdm配置参数…

使用Xbrowser远程连接REHL6.5

xmanager中Xbrowser可以提供图形化桌面远程。和vnc比,可以类似于本地一样用户切换。 操作步骤: linux服务端操作: 1:查看/etc/inittab 默认模式是否是5,默认为5 2:查看是否安装gdm包,默认安…

如何使用xbrowser图形化连接centos

最近公司需要安装文件服务器,我选择了hfs(http file server)作为文件服务器,当我安装hts的时候,由于hfs需要在图形化里进行配置与安装,而我的服务器是在外省,所以通过使用Xmanager Enterprise 4…

Xmanager Xbrowser--Win10远程连接CentOS7

系统环境: 服务器:CentOS 7.2 GNOME桌面环境 个人主机:Windows 10专业版 1、安装epel源,如果已经安装,可跳过此步骤 yum install epel-release -y 2、安装lightdm和xfce yum install lightdm -y yum groupinstall -…

Ubuntu16.04下xbrowser远程图形化桌面配置(简单几步完成~)

搞了好几天,配置了xmanger,走过了太多坑,直到看到这篇博客https://www.cnblogs.com/findumars/p/8182009.html 步骤: 1.远程桌面环境安装 sudo apt-get installxubuntu-desktop 2.修改lightdm配置文件 sudo mv /usr/share/do…

xbrowser连接Linux没有桌面,Windows下使用Xbrowser连接Centos 6.x自带的远程桌面

本文将介绍在Windows系统下使用Xbrowser连接Centos 6.x自带远程桌面的方法。 下面我们来做一些配置,使得远程桌面可以使用。注意:做操作之前,你要确保Windows和Centos 6相互可以ping通。 Centos 6里的设置 1.关闭防火墙:chkconfig…

Linux远程终端工具之Xmanager-Xbrowser

Xmanager介绍 Xmanager全称Netsarang Xmanager,是国外一套非常优秀的远程监控软件。在UNIX/Linux和Windows网络环境中,Xmanager是最好的连通解决方案。我推荐大家下载Enterprise版本,企业版带的工具更多功能更强大。我们通过Xmanager连接Linu…

Xmanager中的Xbrowser怎么使用?

Xmanager作为是一款小巧、便捷的浏览远端X窗口系统的工具。其企业版包括了很多组件,其中就有Xbrowser,使用它可以设置远程Unix/Linux主机支持XDMCP服务器来实现远程X服务。一般情况下,dtlogin, kdm, gdm或者xdm必须在主机上运行。下面就来详细…

分析XBrowser地址栏使用案例

Xbrowser是一个完全免费并且开源的Web浏览器,在Xmanager中可以用来快速打开某个会话或者使用某种协议连接到主机。本集小编同大家讲讲如何使用XBrowser地址栏。 在地址栏输入地址的规则概述如下: hostname (or ipaddress) xdmcp://hostname xstart:/…

java throwable_JAVA异常类Throwable解析

在 Java 中,所有的异常都有一个共同的祖先java.lang包中的 Throwable类。 Throwable: 有两个重要的子类:Exception(异常)和 Error(错误) ;二者都是 Java 异常处理的重要子类,各自都包含大量子类。 Error(错误):是程序无法处理的错误,表示运行应用程序中较严重问题。大多数…