考虑到手机用户体验和离线观看教程的需求,国光打包了几种风格的PDF版本,并且已经插入好目录,阅读体验会比较友好。
早期我的信息安全交流群里面陆陆续续加了很多Temux玩家,然而那是一个信息安全交流群,Termux的提问经常没有人回答,所以后来我就把博客所有的加群链接给去了。现在国光我单独建立了1个Temux群,加群链接藏在本文当中,是一个彩蛋,缘妙不可言,随缘入群吧。好了话不多说,教程开始了,希望本文可以帮助到大家。
下载地址
GooglePlay下载的版本比酷安要新,而且插件这块安装也很方便,有能力的朋友建议首先考虑下载GooglePLay版本的,然后考虑F-Droid版本,最后再考虑可怜兮兮的酷安版本。
Termux是一个Android下一个高级的终端模拟器,开源且不需要root,支持apt管理软件包,十分方便安装软件包,完美支持Python、PHP、Ruby、Nodejs、MySQL等。随着智能设备的普及和性能的不断提升,如今的手机、平板等的硬件标准已达到了初级桌面计算机的硬件标准,用心去打造DIY的话完全可以把手机变成一个强大的极客工具。
初始化
第一次启动Termux的时候需要从远程服务器加载数据,然而可能会遇到这种问题:
目前解决方法有两种:
基本操作还是要学习一下的,可以事半功倍。
可以使用缩放手势来调整其字体大小。对就是双指放大缩小照片那样操作。
长按屏幕会调出显示菜单项(包括复制、粘贴、更多),方便我们进行复制或者粘贴
More菜单的说明如下:
同时在Android的通知栏中也可以看到当前Termux运行的会话数:
常用键是PC端常用的按键如:ESC键、Tab键、CTR键、ALT键,有了这些按键后可以提高我们日常操作的效率,所以Termux后面的版本默认都是显示这个扩展功能按键的。(18年的时候默认是不显示的)
打开和隐藏这个扩展功能按键目前有下面两种方法:
方法一
从左向右滑动,显示隐藏式导航栏,长按左下角的KEYBOARD
方法二
使用Termux快捷键:音量++Q键或者音量++K键
当然这个常用按键在Termux后面的版本也支持自定义的,详情见本文的「进阶配置」-「定制常用按键」这一小节。
这些基础知识简单了解一下就可以了,Linux用的多了就会慢慢熟悉理解了。
Ctrl键是终端用户常用的按键,但大多数触摸键盘都没有这个按键,因此Termux使用音量减小按钮来模拟Ctrl键。例如,在触摸键盘上按音量减小+L就相当于是键盘上按Ctrl+L的效果一样,达到清屏的效果。
音量加键也可以作为产生特定输入的特殊键.
快捷键用的熟悉的话也可以极大提高操作的效率。
Termux除了支持apt命令外,还在此基础上封装了pkg命令,pkg命令向下兼容apt命令。apt命令大家应该都比较熟悉了,这里直接简单的介绍下pkg命令:
除了通过上述的pkg命令安装软件以外,如果我们有.deb软件包文件,也可以使用dpkg进行安装。
dpkg-i./package.de#安装deb包dpkg--remove[packagename]#卸载软件包dpkg-l#查看已安装的包mandpkg#查看详细文档目录结构Bashecho$HOME/data/data/com.termux/files/homeecho$PREFIX/data/data/com.termux/files/usrecho$TMPPREFIX/data/data/com.termux/files/usr/tmp/zsh长期使用Linux的朋友可能会发现,这个HOME路径看上去和我们电脑端的不太一样,这是为了方便Termux提供的特殊的环境变量。
Andorid10以下的版本是可以正常使用netstat命令的,这样可以方便的查看端口开放信息
#查看所有端口netstat-an#查看3306端口的开放情况netstat-an|grep3306
Andorid10版本的Termux下无法正常使用netstat-an命令,国光的解决方法是安装一个nmap,然后扫描本地端口(弯道超车):
#安装nmap端口扫描神器pkginstallnmap#扫描本地端口nmap127.0.0.1使用nmap操作纯属无奈之举,但是又不是不能用(源于:罗永浩名言:-))
要想使用体验好,进阶配置少不了。(单押)
使用pkgupdate更新一下的时候发现默认的官方源网速有点慢,在这个喧嚣浮躁的时代,我们难以静下心等待,这个时候就得更换成国内的Termux清华大学源了,加快软件包下载速度。
可以使用如下命令自动替换官方源为TUNA镜像源
pkgupdate卡住的话多按几次回车不要傻乎乎的等
请使用内置或安装在Termux里的文本编辑器,例如vi/vim/nano等直接编辑源文件,不要使用RE管理器等其他具有ROOT权限的外部APP来修改Termux的文件
编辑$PREFIX/etc/apt/sources.list修改为如下内容
更换源之后来赶紧来下载安装一些基本工具吧,这些工具基本上是Linux系统自带的,因为Termux为了体积不过大,默认是没有带这些工具的,执行下面的命令来安装:
该脚本主要使用了zsh来替代bash作为默认shell,并且支持色彩和字体样式,同时也激活了外置存储,可以直接访问SD卡下的目录。主题默认为agnoster,颜色样式默认为Tango,字体默认为Ubuntu。
执行下面这个命令确保已经安装好了curl命令
手机App默认只能访问自己的数据,如果要访问手机的存储,需要请求权限,如果你刚刚不小心点了拒绝的话,那么可以执行以下命令来重新获取访问权限:
termux-setup-storage脚本允许后先后有如下两个选项:
Enteranumber,leaveblanktonottochange:14Enteranumber,leaveblanktonottochange:6分别选择色彩样式和字体样式,重启Termuxapp后生效配置。不满意刚刚的效果,想要继续更改配色方案的话,可以根据下面命令来更改对应的色彩配色方案:
设置色彩样式:
输入chcolor命令更换色彩样式,或者:~/.termux/colors.sh命令
设置字体
运行chfont更换字体,或者:~/.termux/fonts.sh命令
执行过上面的一键配置脚本后,并且授予Termux文件访问权限的话,会在家目录生成storage目录,并且生成若干目录,软连接都指向外置存储卡的相应目录:
ln-s/data/data/com.termux/files/home/storage/shared/tencent/TIMfile_recvTIM
在Termuxv0.66的版本之后我们可以通过~/.termux/termux.properties文件来定制我们的常用功能按键,默认是不存在这个文件的,我们得自己配置创建一下这个文件。
下面做尝试简单配置一下这个文件:
#新建并编辑配置文件vim~/.termux/termux.properties内容为:
extra-keys=[\['ESC','|','/','HOME','UP','END','PGUP','DEL'],\['TAB','CTRL','ALT','LEFT','DOWN','RIGHT','PGDN','BKSP']\]如果无法创建这个文件,那么得首先新建一下这个目录mkdir~/.termux
修改完成保存文件后,重启Termuxapp生效配置:
可以直接输入特殊的字符串,例如上面的例子中的|就是一个字符串,此外Termux还有封装了一些特殊按键,入上面例子中的ESC就是Termux自带的按键,完整的特殊按键表如下:
上面列出的三个特殊键中的每一个最多只能在附加键定义中列出一次,超过次数将会报错。
下面是国光我自用的按键表:
extra-keys=[\['ESC','|','/','`','UP','QUOTE','APOSTROPHE'],\['TAB','CTRL','~','LEFT','DOWN','RIGHT','ENTER']\]
编辑家目录下的.zshrc配置文件
$vim.zshrc第一行可以看到,默认的主题是agnoster主题:
实际上这个主题也蛮酷的,如果你还想更换其他主题的话,那么在.oh-my-zsh/themes目录下放着oh-my-zsh所有的主题配置文件,只要将默认的agnoster更换为其他的主题文件名即可。下面是国光认为还不错的几款主题
主题比较多,国光这里就不列举了,感兴趣大家可以一个个尝试去看看。当然如果你是个变态的话,可以尝试random主题,每打开一个会话配色主题都是随机的.
ZSH_THEME="random"zsh插件推荐zsh之所以受欢迎除了好看的配色以为,另一个原因就是强大的插件了。下面国光列举一款比较实用的插件的安装方法,更多强大的插件等待大家自己去探索。
根据用户的平时使用习惯,终端会自动提示接下来可能要输入的命令,这个实际使用效率还是比较高的:
#拷贝到plugins目录下gitclonegit://github.com/zsh-users/zsh-autosuggestions$ZSH_CUSTOM/plugins/zsh-autosuggestions在~/.zshrc中配置:
plugins=(其他的插件zsh-autosuggestions)
输入zsh命令生效配置:
可以看到国光我只敲了一个v后面的命令就自动提示补全了,这时候只要按右方向键,在Termux里面的快捷键是音量加+D,就可以直接补全命令了。
默认的启动问候语如下:
vim$PREFIX/etc/motd修改完的效果如下:
这样启动新的会话的时候看上去就会简洁很多。什么你也想要这个效果?呐下面是国光自己生成的,可以直接复制粘贴:
_____|__|_________________||/_\'__|'_`_\|||\\//||__/||||||||_||><|_|\___|_||_||_||_|\__,_/_/\_\超级管理员身份实际上Termux不需要root权限也可以折腾各种各样的操作的,大家不必对root抱有啥幻想,本文的操作基本上没有涉及到手机要用到root的地步。
利用proot可以为手机没有root的用户来模拟一个root的环境,这里主要是经典的Linux文件系统布局上的模拟。
pkginstallproot-y然后终端下面输入:
termux-chroot即可模拟root环境,该环境模仿Termux中的常规Linux文件系统,但是不是真正的root。
输入exit可回到普通用户的文件系统。
安装tsu,这是一个su的Termux版本,是一个真正的root权限,用来在termux上替代su,操作不慎可能对手机有安全风险。因为官方封装了,所以安装也很简单:
pkginstalltsu-y然后终端下面输入:
Termux支持的开发环境很强,可以完美的运行C、Python、Java、PHP、Ruby等开发环境,建议读者朋友们选择自己需要的开发环境折腾。
写代码前总得折腾一下编辑器,毕竟磨刀不误砍柴工嘛。Termux支持多种编辑器,完全可以满足日常使用需求。
据说Emacs是神的编辑器,国光我这种小菜鸡还不会使用哎,但是Termux官方已经封装好了Emacs了,我们安装起来就会简单很多:
pkginstallemacsnanonano是一个小而美的编辑器。具有如下:打开多个文件,每行滚动,撤消/重做,语法着色,行编号等功能
同样安装起来也很简单:
pkginstallnanoVimVim被称为编辑器之神,基本上Linux发行版都会自带Vim,这个在前文基本工具已经安装了,如果你没有安装的话,可以使用如下命令安装:
pkginstallvim-python解决汉字乱码如果你的Vim打开汉字出现乱码的话,那么在家目录(~)下,新建.vimrc文件
vim.vimrc添加内容如下:
setfileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1setenc=utf8setfencs=utf8,gbk,gb2312,gb18030然后source下变量:
source.vimrc效果图
TermuxVim自带了如下的配色:
ls/data/data/com.termux/files/usr/share/vim/vim82/colorsdesert.vimmorning.vimshine.vimblue.vimelflord.vimmurphy.vimslate.vimdarkblue.vimevening.vimpablo.vimindustry.vimpeachpuff.vimtorte.vimdelek.vimkoehler.vimron.vimzellner.vim配色可以自己一个个尝试一下,还是向上面的汉字乱码那样,编辑家目录下的.vimrc文件:
vim~/.vimrc新增如下内容:
setnu"显示行号colorschemedesert"颜色主题syntaxon"打开语法高亮下面是国光随便找的几个颜色主题效果,感兴趣的朋友可以自己一个个尝试:
Apache是一个开源网页服务器软件,由于其跨平台和安全性,被广泛使用,是最流行的Web服务器软件之一。
Termux自带的Apache的网站默认路径为:
$PREFIX/share/apache2/default-site/htdocs/index.html
apachectlstop重启ApacheBashapachectlrestartApache解析PHP既然Apache、PHP、MySQL都成功安装的话,那么现在只要配置好Apache解析PHP之后就可以打造一个Android平台上的LAMPP平台了。
默认的Apache是无法解析PHP的,我们需要安装相应的包:
pkginstallphp-apache配置ApacheTermux上的Apache默认配置文件的路径为:
直接编辑配置文件:
LoadModulephp7_module/data/data/com.termux/files/usr/libexec/apache2/libphp7.so并在刚刚这个语句下方添加解析器,内容如下:
修改完Apache的配置文件后,记得使用apachectlrestart重启Apache服务,然后这个时候回发现我们重启居然报错了:
ApacheisrunningathreadedMPM,butyourPHPModuleisnotcompiledtobethreadsafe.YouneedtorecompilePHP.AH00013:Pre-configurationfailed不要慌问题不大,下面来解决这个问题
先找到如下行
LoadModulempm_worker_modulelibexec/apache2/mod_mpm_worker.so给他注释掉为:
#LoadModulempm_worker_modulelibexec/apache2/mod_mpm_worker.so然后找到如下行:
#LoadModulempm_prefork_modulelibexec/apache2/mod_mpm_prefork.so取消注释为:
LoadModulempm_prefork_modulelibexec/apache2/mod_mpm_prefork.so最终的示例图如下:
在Apache的网站根目录下,创建一个index.php,测试一下phpinfo()函数能否正常运行:
Termux官方封装了Clang,他是一个C、C++、Objective-C和Objective-C++编程语言的编译器前端。
pkginstallclang编译测试clang在编译这一块很强大,感兴趣的朋友可以去网上查看详细的教程,国光这里只演示基本的HelloWorld使用。写一个HelloWorld的C程序,如下hello.c:
#include
clanghello.c-ohello
pkginstallecjdx-y国光这里只演示基本的HelloWorld使用。写一个HelloWorld的JAVA程序,如下HelloWorld.java:
publicclassHelloWorld{publicstaticvoidmain(String[]args){System.out.println("HelloTermux");}}编译生成class文件BashecjHelloWorld.java编译生成dex文件Bashdx--dex--output=hello.dexHelloWorld.class使用dalvikvm运行格式规范如下:dalvikvm-cpdex文件名类名
dalvikvm-cphello.dexHelloWorld
MariaDB是MySQL关系数据库管理系统的一个复刻,由社区开发,有商业支持,旨在继续保持在GNUGPL下开源。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。
Termux官方也封装了MariaDB,所以安装起来很方便:
pkginstallmariadb
这里基本上会安装很顺利,但是早期用户可能出现安装失败的情况,如果安装失败的话,这个时候手动在配置目录下创建my.cnf.d文件夹即可:
$cd/data/data/com.termux/files/usr/etc/$mkdirmy.cnf.d初始化数据库早期的Termux安装完MySQL是需要初始化数据库的,新版本在安装时候就已经初始化了数据库
mysql_install_db2020年4月19日:国光今天安装的MySQL发现已经存在mysql.user表了,无需初始化:
因为正常启动完成后,MySQL这个会话就一直存活,类似与Debug调试一样,此时使用Ctrl+C->中止当前进程也无济于事,体验式就一点都不优雅,所以这里国光使用Linux自带的nohup命令将其放到后台启动。
nohupmysqld&
图片上这个17115此时就是mysqld的进程PID号,我们使用如下命令验证一下是否正确:
psaux|grepmysql可以看到果然是进程的PID号:
至于nohup运行的提示
nohup:ignoringinputandappendingoutputto`nohup.out'这个是正常现象,无伤大雅,Termux下就这样将就着用吧。
Termux下没有好的办法退出MySQL服务,只能强制杀掉进程了,使用如下命令格式可以轻松杀掉进程:
kill-9PID
当然每次查看进程的PID号,再杀掉进程有点繁琐了,实际上这一步可以直接这样操作:
kill-9`pgrepmysql`Awesome!优雅!
新版本的Termux安装初始化数据库的时候包含两个高权限用户,一个是无法访问的root用户
mysql-u$(whoami)
老版本的Termux的直接使用mysql_secure_installation可以设置密码,但是新版本的安全策略变更了我们在设置密码的时候回提示当前密码不正确,所以这条路行不通了。
OK!如何和图片上差不的效果,那么修改root密码就成功了。
mysql-uroot-pEnterpassword:xxxxx(这里输入你的密码)
使用ipa后查看IP地址后,尝试电脑端远程访问Termux的数据库:
发现默认是无法成功连接的,这个时候我们需要到数据库手动开启root用户的远程访问权限:
这里的P@ssw0rd是我的root密码
grantallon*.*toroot@'%'identifiedby'P@ssw0rd'withgrantoption;flushprivileges;
执行完成后尝试PC端远程过去看看:
Nginx是一个高性能的Web和反向代理服务器,Nginx用的熟悉的话,下面搭建各种网站也就轻而易举了。
Termux安装Nginx也很简单,一条命令即可:
pkginstallnginx安装完成后,国光的习惯是查看一下版本信息:
测试检查Nginx的配置文件是否正常:
nginx-t
现在测试肯定是OK的,这个多用于我们修改完Nginx的配置文件后的检查。
早期版本的Termux需要在termux-chroot环境下才可以成功启动Nginx,新版本的Termux可以直接启动,很是方便:
nginx-sreload停止Nginx方法一原生停止Bashnginx-sstop或者
nginx-squitquit是一个优雅的关闭方式,Nginx在退出前完成已经接受的连接请求。Stop是快速关闭,不管有没有正在处理的请求。
只需三番钟,里造会干我一样,爱象节款游戏扯远了,只需要1条命令,即可优雅的终止掉Nginx服务:
kill-9`pgrepnginx`貌似手机党并不好敲这个`符号=,=,如果实在敲不出来,那就分两步走吧:
Nginx本身不能处理PHP,它只是个Web服务器,当接收到PHP请求后发给PHP解释器处理。Nginx一般是把请求转发给fastcgi管理进程处理,PHP-FPM是一个PHPFastCGI管理器,所以这里得先安装它:
pkginstallphp-fpm安装完成顺便检查一下版本信息吧:
编辑php-fpm的配置文件www.conf:
vim$PREFIX/etc/php-fpm.d/www.conf定位搜索listen=找到
listen=/data/data/com.termux/files/usr/var/run/php-fpm.sock将其改为:
listen=127.0.0.1:9000???啥你不会使用vim搜索ㄟ(▔,▔)ㄏ那就老老实实一个个翻页吧。
编辑Nginx的配置文件nginx.conf:
vim$PREFIX/etc/nginx/nginx.conf下面国光贴出配置好的完整配置文件,大家可以参考下面这些图,只需要2大步骤:
Termux里面的Nginx默认网站的根目为:
/data/data/com.termux/files/usr/share/nginx/html如果想要修改默认路径的话只需要在配置文件中替换2处出现的这个路径即可
下面贴一份完整的配置文件:
/data/data/com.termux/files/usr/share/nginx/html在这个网站根目录下新建info.php内容为:
echo'
php-fpm然后再启动Nginx服务
nginx如果你的Nginx已经启动了的话,使用nginx-sreload重启Nginx
Node.js是能够在服务器端运行JavaScript的开放源代码、跨平台JavaScript运行环境。
nodejs-lts是长期支持版本,如果执行pkginstallnodejs版本后,发现npm报如下错误:
segmentationfault那么这个时候可以尝试卸载当前版本pkguninstallnodejs然后执行下面命令安装长期稳定版本:
pkginstallnodejs-lts安装完成后使用如下命令查看版本信息:
node-Vnpm-VHelloWorld新建一个hello.js脚本,内容如下:
console.log('HelloTermux');然后尝试运行:
尝试电脑端浏览器直接访问看看:
早期版本的Termux的npm安装一些包的时候会报如下错误:
Cannotreadproperty'length'ofundefined查了下是这边版本的问题
这是一个BUG,官方的解决方法如下:
编辑如下文件:
vim$PREFIX/lib/node_modules/npm/node_modules/worker-farm/lib/farm.js我这里修改length的是4,这个好像和CPU有关,总之这里的length得指定一个数字。
然后在重新安装下npminstallhexo-cli-g成功。
PHP是一种开源的脚本语言,适用于网络开发。语法借鉴吸收C语言、Java和Perl等流行计算机语言的特点,易于学习,PHP是世界上最好的语言(手动狗头)。
Termux官方封装了PHP,所以我们安装起来就很方便:
pkginstallphp安装完成后查看下版本信息:
php--version
自PHP5.4之后PHP内置了一个Web服务器。在Termux下可以很方便地测试PHP文件
首先在家(~)目录下建一个www文件夹,然后在www文件夹下新建一个index.php文件,内容为:
#新建www文件夹mkdir~/www#创建inedx.php文件echo'
Python2版本要淘汰了,大家简单了解一下就好:
pkginstallpython2-y安装完成后,使用python2命令启动Python2.7的环境
Termux安装Python默认版本是Python3的版本,与此同时也顺便安装了clang
pkginstallpython-y安装完成后,查看下clang和Python的版本:
如果你同时安装了Python3和Python2版本的话,最好向下图中这样验证一下各个版本情况,做到心知肚明,国光我是先安装Python3然后再安装Python2的:
pip保持最新是一个好习惯,升级方式很简单:
国光:不要慌问题不大,我们可以手动查看当前有哪些可执行的pip文件,使用如下命令:
ls/data/data/com.termux/files/usr/bin|greppip
接下来分别查看对应pip可执行文件的版本:
现在全都是最新版的pip了哦
iPython是一个Python的增强版本的交互式shell,支持变量自动补全,自动缩进,支持shell命令等,内置了许多很有用的功能和函数。iPython可以提高我们的学习效率!
先安装clang,否则直接使用pip安装ipython会失败报错.没有安装的话使用pkginstallclang安装
ipython2-Vipython-VJupyterNotebookJupyterNotebook(此前被称为iPythonnotebook)可以在Web端提供Python交互,虽然和iPython共享同一个内核,但是更强大。
下面官方建议安装的完整的命令:
pkgupdatepkginstallproottermux-chrootaptinstallgitclangaptinstallpkg-configaptinstallpythonpython3-devaptinstalllibclanglibclang-devaptinstalllibzmqlibzmq-devaptinstallipythonpipinstalljupyter如果你一步步跟着本文安装顺序操作的话,发现很多工具我们都安装过了(国光我真的有先见之明…),那么直接参考如下命令安装即可:
jupyter--version
JupyterNotebook就安装好了,这个比较强大更详细的教程大家可以自行去谷歌或者百度一下,国光这里只演示基本的功能。
先启动notebook
jupyternotebook然后会看到运行的日志,我们复制出提示的URL:
复制出的这个URL地址在浏览器中打开:
可以看到成功运行了,那我们按照图片提示走个形式,输出个HelloWorld就跑路:
OK运行成功,那么回到Termux里面使用组合键Ctrl+C->中止当前的Jupyter进程
网站搭建这一块实际上原理是大同小异的,国光这里只写几个网站的安装方法,给大家提供一个思路。
DVWA是一个用来搞Web安全从业者入门使用的一个练习靶场,用来学习掌握基本的漏洞原理使用的,如果你对Web安全不感兴趣的话可以直接跳过这一个小节。
国光建议DVWA练习的时候要结合源码去分析漏洞不要直接把网上攻击流程走一步就草草了之了不看源码的学习等于啥都没有学
因为DVWA靶场是PHP编写的,所以你需要提前配置好Nginx、PHP以及数据库,关于这方面配置可以参考前面开发环境下分类的「Nginx」、「MariaDB(MySQL)」和「Nginx解析PHP」章节
可以看到dvwa数据库已经新建成功了。
#将配置文件还原为PHP后缀cd$PREFIX/share/nginx/html/dvwa/configmvconfig.inc.php.distconfig.inc.php#编辑配置文件vimmvconfig.inc.php.distconfig.inc.php只需要定位找到如下内容根据你的实际情况填写就可以了:
可以看到allow_url_include运行URL远程包含没有开启,我们得手动开启一下:
实际上正常人是不会去开启这个的,十分危险,但是DVWA是一个靶场,有些漏洞实际上就是利用PHP配置不当造成的,这样才让新手有攻击下来的信心。
Termux下默认是没有php.ini文件的,不信我们手动来查找一下:
php--iniConfigurationFile(php.ini)Path:/data/data/com.termux/files/usr/libLoadedConfigurationFile:(none)Scanforadditional.inifilesin:(none)Additional.inifilesparsed:(none)发现php.ini的文件应该存放在/data/data/com.termux/files/usr/lib目录下,但是PHP没有找到配置文件,所以需要我们手动在这个目录下新建php.ini配置文件:
echo'allow_url_include=On'>$PREFIX/lib/php.ini注意这是一个不安全的配置只是为了配合本地的DVWA靶场做模拟黑客攻击练习使用的
配置完成后,自己尝试使用php--ini来定位搜索配置文件,会发现PHP已经找到了配置文件了。
修改完配置文件后得重启php-fpm服务:
可以看到刚刚的配置文件生效了,现在安全检查全部通过
DVWA默认的用户有5个,用户名密码如下:
Hexo是用Nodejs编写的,所以安装的话得使用npm命令来安装:
hexo-vHexo基本部署我们建立一个目录,然后到这个目录下初始化Hexo环境
#手动创建一个目录mkdirhexo#进入目录下并初始化Hexo环境cdhexohexoinit#生成静态文件启动Hexohexoghexos
Hexo是纯静态博客,官方默认把Hexo搭建在GithubPages仅仅是把Hexo根目录的public文件夹即Hexo生成的纯HTML源码部署到上面而已。所以知道这样原理我们就可以轻而易举地将Hexo部署到Nginx下面。
hexog
可以看到Hexo的根目录下已经生成了public文件夹了
现在我们只需要将public的文件夹里面的源码全部拷贝到Nginx的网站根目录下:
当然这里网站的CSS等样式没有加载出来,这个原因是Hexo对网站目录下部署并不友好,大概有如下解决方法:
国光这里就只是说一下这个思路,因为强迫症的我不能忍受Nginx根目录的文件乱七八糟=,=大家想尝试的话按照我这个思路去尝试就可以了
我们拷贝下载链接后,使用wegt可以直接下载:
Nginx确保已经配置可以解析PHP,如果没有配置好,那么请惨叫上文的「开发环境」小节
当然在局域网的情况下,通过IP地址,局域网的其他设备也是可以轻松访问到你的文件的,文件共享目的达成。
WordPress是一个以PHP和MySQL为平台的自由开源的博客软件和内容管理系统。如果你的Termux没有配置好MySQL、PHP、Nginx的话那么请参考上面的开发环境章节来进行配置。
网站需要数据库,在安装WordPress前我们先需要新建一个数据库,以供后面的网站安装:
mysql-uroot-p***-e"createdatabasewordpress;showdatabases;"***这里是mysql的密码
可以看到wordpress数据库已经新建成功了。
选择最新的版本后,复制下载的直链,那么就开始用wget下载并解压吧:
如果你读过前面的「开发环境」、「Nginx」、「Nginx解析PHP」三个小节的话,这里直接启动php-fpm和Nginx即可:
php-fpmnginx当然如果你的php-fpm和Nginx服务以及启动的话就直接跳到下一步吧
Termux可以安装其他Linux发行版系统,核心用到的工具是chroot,所以我们得确保安装系统的时候proot这个包你是安装好的,然后因为操作系统店都有官方维护的脚本,所以安装起来甚至比我们前面配置的开发环境还要简单,下面来具体的介绍吧。
有能力的朋友以下工具可以直接在GooglePlay商店里面下载,国光这里就简单列举搬运一下:
VNC工具的隐藏技巧,首先我们默认使用VNCViewer这个工具远程是下图这张效果,可以看到并没有占满全屏,强迫症无法接受:
然后使用Kali官方的NetHunterKeX远程连接,屏幕就完全被充分利用了:
但是NetHunterKex在远程操作体验上又不如VNCViewer舒服,难道鱼和熊掌就无法兼得了吗?当然可以!!!经过国光测试,这个时候后台关掉NetHunterKeX的时候呢,再用VNCViewer就可以完美的利用手机的全部屏幕空间了,岂不是美哉。
KaliNetHunter是基于KaliLinux的免费、开源的Android设备移动渗透测试平台,安全从业者必备的操作系统。
Kali官网提供的完整的安装命令如下,下面国光标上注释方便大家理解:
安装成功的效果图如下:
nethunter命令可以缩写成nh,KaliNetHunter默认的用户名kali的密码也是kali
root密码没有设置可以输入sudopasswd来修改root用户的密码
上面命令表中的KeX服务,实际上就是VNC服务,默认的端口是5901端口,首先Termux下启动Kali的VNC:
nhkex&
图片上可以得出KeX服务的端口是5901,然后进程的ID是17222,可以使用nmap或者netstat命令再检测一下5901端口是否打开。
VNC连接还需要密码,所以这里手动设置一下:
nhkexpasswd设置完成之后级可以在VNC连接工具里面填写相应的信息即可连接了,记得端口号要加上:
VNC关掉连接后,想要停止Kex服务即VNC服务,Termu下使用如下命令即可退出服务:
这个脚本国光我磨磨蹭蹭写了1天才写完,筛选下来的系统都是体验还不错的系统。
下载的主要镜像全部托管在了Gitee上,下载速度很快,而且系统对应的更新源国光均替换为国内源了,安装和卸载都很容易上手,用户非预期的输入也都考虑到了,目前完美支持Ubuntu、Kali、Debian、CentOS、Fedora系统的安装,具体想尝试的话可以输入如下命令体验安装:
确保Termux已经安装了proot和Python3才可以顺利安装
如果你是一个极客玩家,不折腾会死星人的话,那么本章节比较适合你。祝你折腾愉快!
Aria2是一个轻量级多协议和多源命令行下载实用工具。它支持HTTP/HTTPS,FTP,SFTP,bt和Metalink。最近被封杀的PanDownload也是使用的是Aria2来加速下载百度网盘里的资源的。本文是一个Termux教程,所以关于Aria2不会很深入将下去,关于更多Aria2的配置教程,大家可以参考网上其他大佬的教程。
pkginstallaria2安装完成后可以顺便看一下版本信息:
aria2c-v启动rcp服务aria2支持rpc服务,默认监听的是6800端口。这样我们可以使用开源的Web项目来连接操作aria2
aria2c--enable-rpc--rpc-listen-all
如果如果下载速度比较慢的话,可以尝试使用fastgit镜像地址来下载
有时候我们需要通过ssh远程连接服务器,这个时候有Termux,躺在床上就可以操作电脑了,哇!哦哦哦!awesome,或者我们突然很闲,想要用电脑来远程手机,没错Termux都可以做到。
OpenSSH是SSH(SecureSHell)协议的免费开源实现。SSH协议族可以用来进行远程控制,或在计算机之间传送文件。Termux官方已经封装好了,我们安装起来也会很简单:
pkginstallopenssh远程连接电脑然后就可以直接ssh连接你的服务器了,(前提是电脑安装了ssh服务)
sshsqlsec@192.168.1.8手机连接操作电脑效果图:
附上完整的LinuxSSH连接命令格式:
#ssh-p端口号用户名@主机名或者IPssh-p22user@hostname_or_ip#ssh-i私钥用户名@主机名或者IPssh-iid_rsauser@hostname_or_ip传输文件SSH不仅仅可以远程连接服务器,同样也可以使用SSH自带的scp命令进行文件传输:
复制文件
#scp本地文件路径远程主机用户名@远程主机名或IP:远程文件保存的位置路径scplocal_fileremote_username@remote_ip:remote_folder复制目录
#scp-r本地文件夹路径远程主机用户名@远程主机名或IP:远程文件夹保存的位置路径scp-rlocal_folderremote_username@remote_ip:remote_folder看完了不打算亲自尝试一下文件传输的操作吗?:-)
这个使用场景比较少,但是既然要打造中国的Termux文档的效果,还是一起写上去吧,首先确保你已经安装了openssh软件包,没有安装的话参考上一个小结进行安装。实现这个效果有两大种方法:
安装完成后,sshd服务默认没有启动,所以得手动启动下:
sshd因为手机上面低的端口有安全限制,所以这里openssh默认的sshd默认的服务端口号为8022
如果需要停止ssh服务,只需要kill杀掉进程即可:
pkillsshd通过密码认证链接Termux默认是使用密码认证进行连接的,如果要启用密码连接的话要确保你的密码足够安全,否则你的SSH被恶意攻击者连接或者爆破成功的话,那就美滋滋了!
Termux下的SSH默认配置文件的路径为$PREFIX/etc/ssh/sshd_config,我们来查看下这个配置文件:
PrintMotdnoPasswordAuthenticationyesSubsystemsftp/data/data/com.termux/files/usr/libexec/sftp-server国光的Termux0.94的版本就这3行配置,下面来逐行解释一下这个配置:
PasswordAuthentication:是否启用密码认证
执行passwd命令可以直接修改密码:
passwd
国光测试了一下Termux的ssh和常规Linux不太一样,连接的时候不需要指定用户名。
ssh192.168.31.124-p8022
公私钥连接更加安全,再也不用但你的TermuxSSH被黑客爆破攻击的情况了
首先在PC端生成秘钥对:
ssh-keygen默认一直回车下去:
此时会在~/.ssh目录下生成3个文件id_rsa,id_rsa.pub,known_hosts
然后需要把公钥id_rsa.pub拷贝到手机的data\data\com.termux\files\home\.ssh文件夹中。然后
将公钥拷贝到验证文件中
在Termux下操作
catid_rsa.pub>authorized_keys
vim$PREFIX/etc/ssh/sshd_config找到
PasswordAuthenticationyes修改为
PasswordAuthenticationno然后记得重启一下SSH服务:
pkillsshd;sshd然后电脑端这边直接就可以通过公私钥连接了,无需输入密码也更加安全:
操作完上一步之后,我想你大概已经知道了公私钥的原理了。那么我们现在尝试在Termux端生成公私钥这种方法试试看,理论上也是可以的。
首先在Termux端生成秘钥对:
ssh-keyge此时会在~/.ssh目录下生成3个文件id_rsa,id_rsa.pub,known_hosts
然后将公钥拷贝到验证文件中
接着将id_rsa.pub私钥下载下来,拷贝到PC端上,并赋予600的权限:
chmod600id_rsa然后通过-i手动加载私钥的方式也可以成功连接到Termux:
ssh-iid_rsaroot@192.168.31.124-p8022
至此,Termuxssh连接的3种方式都演示过了,国光个人比较建议使用PC端生成公私钥的方法,这样可以减少rsa私钥泄露的风险,也方便PC端的远程连接与管理。
pkginstallaria2本地启动服务Basharia2c--enable-rpc--rpc-listen-all这个rpc服务默认监听的是6800端口,启动后方便下面的Web界面连接操作.
使用效果图,速度蛮快的,有兴趣的可以研究如何利用aria2来下载百度云文件,等你们来探索.
一个命令行小程序,支持下载各大网站的视频,具体支持的网站大家可以参考官方项目,国光这里就只作简单的介绍。
Python3如果没有安装的话可以参考上文的「开发环境」-「Python」
pkginstallpython3ffmpeg-y安装完成后,直接使用pip来安装,这里通过-i指定国内的pip源速度会更快一点:
下面以我自己的歌单为例子,首先找到自己喜欢的歌单,然后点击复制链接:
直接you-get歌单的链接地址就可以直接批量下载地址了:
下载完成后会以歌单名作为文件夹存放下载好的音乐以及歌单的封面:
因为Termux可以很好的支持Python,所以几乎所有用Python编写的安全工具都是可以完美的运行使用的,所以国光这个版块重点就列举了国光认为实战中比较不错的安全工具。当然大家也可以直接参考本文的「系统安装」-「KaliNetHunter」章节,直接在手机里面安装一个KaliLinux系统,国光实际体验还是很完美的,里面的信息安全工具要更全面一些。
一个强大的元数据查看修改工具,CTF的MISC的比赛上也经常露面,实际上ios自带的相机拍出的照片里面是携带GPS定位的,使用Exiftool就可以很轻松的查看到经纬度信息。
pkginstallexiftool下面查看一下国光我刚刚保存地理信息拍的照片的元数据信息:
cd~/storage/dcim/CameraexiftoolIMG_20200424_073210.jpg
给GPS位置信息打马,防止网友顺着网线过来打人。
Metasploite黑客Top10工具之一,漏洞攻击库,安全从业者必备工具之一,也在各大黑客题材的电影中频频出现。
目前Termux官方的pkg已经支持直接安装Metasploit了,但是仅适用于Android7及其以上版本。通过如下两条命令即可安装,下载过程大约1分钟左右(当然国光我是挂代理的)
#切换不稳定源pkginstallunstable-repo#安装msfpkginstallmetasploit出现如下字样表明安装就成功了:
Success.Youcannowstartthedatabaseserverusing:pg_ctl-D/data/data/com.termux/files/usr/var/lib/postgresql-llogfilestart...2020-04-2112:54:36.233CST[8294]LOG:listeningonIPv4address"127.0.0.1",port5432...[*]MetasploitFrameworkinstallationfinished.W:APThadplannedfordpkgtodomorethanitreportedback(0vs4).Affectedpackages:metasploit:aarch64可以看到postgresql已经成功运行在127.0.0.1:5432端口了,metasploit:aarch64安装成功。
因为老的安卓版本不支持unstable-repo,所以只能执行如下命令手动安装了:
国光强烈建议搭建挂代理安装,这样效率和成功率会高很多,大家看到这个版块说明也是安全从业者了,所以代理对于你来说应该很简单了吧。
Termux安装MSF的时候会自动配置好postgresql并且更新ruby版本,MSF控制台里面输入db_status可以查看数据库连接情况。最新的MSF5版本已经有cve-2019-0708的exploit了。
目前ncat已经集成到了nmap里面,安装完nmap后就可以使用ncat命令了,如果你不想安装nmap也可以单独安装ncat命令:
安装Nmap
Termux源里面封装打包了Nmap,所以安装起来就比较简单:
pkginstallnmap
Hashcat是世界上最快的密码破解程序,是一个支持多平台、多算法的开源的分布式工具。
安装Hashcat
Termuxunstable源里面也封装好了Hastcat,所以我们安装依然一条命令即可:
pkginstallhashcat如果提示找不到Hashcat包的话,那么手动安装切换不稳定源即可:
安装Hydra
pkginstallhydra
安装SQLmap
我们直接gitclone源码,然后运行sqlmap.py文件:
下面尝试直接安装运行看看:
#下载并解压mkdirxray&&cdxraywgetxxxxx.zip#xray的下载地址unzipxray_linux_arm64.zip#直接运行./xray_linux_arm646
因为Termux完美的支持Python和Perl等语言,所以有太多优秀的信息安全工具值得大家去发现了,这里我就不一一列举了。
Termux有一些额外有趣的功能,我们可以通过安装插件的方式来使用这些功能。网友们反馈F-Droid里面的Termux插件都是可以免费下载的,唯一的缺点就是可能版本低于GooglePlay的版本,大家自行抉择。
Termux:API,可用于访问手机硬件实现更多的友情的功能。官方唯一一个免费的API,良心啊。
请勿在GooglePlay和F-Droid之间混合安装Termux和插件。
因为Termux-api可以直接操作手机底层,所以我们需要到手机的设置里面给这个APP的权限全部开了,这样下面操作的时候就不会提示权限不允许的情况了。
手机安装完Termux-api的APP后,Termux终端里面必须安装对应的包后才可以与手机底层硬件进行交互。
pkginstalltermux-api下面只列举一些可能会用到的,想要获取更多关于Termux-api的话,那就去参考官方文档.
termux-battery-status参数无,返回信息是JSON格式。可以看到电池的-健康状况-电量百分比-温度情况等
{"health":"GOOD","percentage":100,"plugged":"UNPLUGGED","status":"DISCHARGING","temperature":24.600000381469727}获取相机信息Bashtermux-camera-info参数无,返回信息是JSON格式。
参数无,返回信息是JSON格式。
termux-contact-list
termux-infrared-frequencies获取无线电信息无参数,返回格式是JSON格式
termux-telephony-cellinfo查看手机运营商信息无参数,返回格式是JSON格式
termux-telephony-deviceinfo国光的实际测试返回值:
{"data_enabled":"true","data_activity":"dormant","data_state":"disconnected","device_id":null,"device_software_version":"00","phone_count":2,"phone_type":"gsm","network_operator":"46001","network_operator_name":"中国联通","network_country_iso":"cn","network_type":"lte","network_roaming":false,"sim_country_iso":"cn","sim_operator":"46011","sim_operator_name":"中国联通","sim_serial_number":null,"sim_subscriber_id":null,"sim_state":"ready"}获取tts语音引擎信息Bashtermux-tts-engines国光的实际演示:
[{"name":"com.google.android.tts","label":"Google文字转语音引擎","default":false},{"name":"com.xiaomi.mibrain.speech","label":"小爱语音引擎","default":true}]获取USB设备信息Bashtermux-usb[-l|[-r][-e命令]设备]选项细节
-l列出可用设备-r如果尚未授予权限,则显示权限请求对话框-ecommand执行指定的命令AndroidTermux下要读取USB内容或者U盘的时候,还需要安装如下依赖包:
pkginstalltermux-apilibusbclang-y有些包我们上面已经安装过了。
下面国光来实际演示一下这个API的使用:
查看次数Android的USB设备信息:
$termux-usb-l["/dev/bus/usb/001/002"]可以看到国光我这个512GB的M.2SSD已经显示在列表中了(装作不经意间说出来的样子,类似于朱一旦不经意间露出自己的劳力士一样2333)
请求访问权限:
termux-usb-r/dev/bus/usb/001/002Accessgranted.下面级可以尝试写代码去访问这个USB设备内容了:
usbtest.c
#include
gccusbtest.c-lusb-1.0-ousbtest编译完成后会生成可执行的文件usbtest,接下来通过这个API来执行这个文件:
termux-usb-e./usbtest/dev/bus/usb/001/002VendorID:152dProductID:0576Manufacturer:HikvisionProduct:HikvisionExternalDiskSerialNo:0123456789ABCDEF糟糕暴露了我的512GB的SSD居然是最廉价的海康威视,溜了溜了逃~
termux-wifi-connectioninfo{"bssid":"xx:xx:00:00:00:00","frequency_mhz":5785,"ip":"192.168.31.124","link_speed_mbps":130,"mac_address":"xx:xx:00:00:00:00","network_id":-1,"rssi":-69,"ssid":"
termux-wifi-scaninfo
termux-brightness[亮度]亮度的值在0~255之间,国光这里测试了255并达不到手机的最大亮度
termux-camera-photo[-ccamera-id]output-filecamera-id:相机的id,默认是0,相机id可以通过隔壁的命令来获取
下面的命令表示使用相机id为0即后置的相机来拍摄(id1为前置相机),保存的文件在当前路径下名字叫guoguang.jpg
termux-camera-photo-c0guoguang.jpg国光看了下后置拍摄出来的照片,有点看不下去。前置相机效果还不错,可能是因为现在手机是多个摄像头的原因,Termux的相机算法上面没有做到足够好的优化。
查看当前剪贴板内容
termux-clipboard-get设置新的剪贴板内容
termux-clipboard-setPHP是世界上最好的语言效果演示
直接调用系统下载器,不返回任何值。而且国光我现在还没有搞清楚下载的文件到哪里去了
termux-download[-d描述][-t标题]下载的目标地址国光的演示:
该API仅适用于Android6及其以上版本,不接受任何参数,返回JSON格式。
termux-fingerprint
返回内容:
{"errors":[],"failed_attempts":0,"auth_result":"AUTH_RESULT_SUCCESS"}调用红外发射Bashtermux-infrared-transmit-f发射频率频率以逗号分隔,例如20,50,20,30,仅传输短于2秒的码型。
输出格式为JSON格式
termux-location[-p定位方式][-r定位请求]细节参数:
-pprovider[gps/network/passive](默认:gps)-rrequest[once/last/updates](默认:once)实际演示:
termux-location-pnetwork返回内容(关键地方已经打马赛克处理了防止网友顺着网线打过来):
{"latitude":xx.xxxxxxx,"longitude":xx.xxxxxxx,"altitude":0.0,"accuracy":xx.0,"vertical_accuracy":0.0,"bearing":0.0,"speed":0.0,"elapsedMs":7,"provider":"network"}播放媒体文件使用MediaPlayerAPI播放指定的文件。
termux-media-player[命令][参数]详细参数:
info#显示当前播放信息play#恢复播放play
#播放hacker.mp4视频$termux-media-playerplayhacker.mp4NowPlaying:hacker.mp4#查看当前播放信息$termux-media-playerinfoStatus:PlayingTrack:hacker.mp4CurrentPosition:01:28/15:13#退出播放$termux-media-playerstopStoppedplaybackTrackcleared调用麦克风termux-microphone-record[参数]参数细节
$termux-microphone-record-dRecordingstarted:/storage/emulated/0/TermuxAudioRecording_2020-04-20_19-50-51.m4aMaxDuration:15:00$termux-microphone-record-i{"isRecording":true,"outputFile":"\/storage\/emulated\/0\/TermuxAudioRecording_2020-04-20_19-50-51.m4a"}$termux-microphone-record-qRecordingfinished:/storage/emulated/0/TermuxAudioRecording_2020-04-20_19-50-51.m4a显示系统通知显示系统通知,通知内容使用-c或者--content读取,或者从stdin读取
termux-notification[选项]选项细节
当你要使用--typemedia的时候详细参数:
--media-next在媒体下一个按钮上执行的操作--media-pause在媒体暂停按钮上执行的操作--media-play在媒体播放按钮上执行的操作--media-previous在媒体上一个按钮上执行的操作国光的演示:
termux-notification-t'国光的Termu通知测试'-c'HelloTermux'--typedefault
termux-telephony-call10001临时窗口通知Bashtermux-toast[选项][通知]选项参数
-h显示帮助信息-b设置背景色(默认:gray)-c设置文本颜色(默认:white)-g设置吐司的位置:[top,middle,orbottom](默认:middle)颜色可以是标准名称比如说:red也可以是十六进制值如#FF0000,无效的颜色将恢复为默认值。
国光的实际演示:
termux-toast-bwhite-cblackHelloTermux
termux-torch[on|off]调用tts语音引擎使用系统文本语音转换(TTS)引擎朗读文本。
termux-tts-speak[-e引擎][-l语言][-n区域][-v变体][-p音调][-r速率][-s][要说的话]选项细节
-eengine#要使用的tts语音引擎(详见termux-tts-engines这个命令)-llanguage#要说的语言类别-nregion#语言的地区-vvariant#语言的变体-ppitch#语音的语调,1是默认的正常值-rrate#语音的语速,1是默认的正常值-sstream#要使用的音频流(默认是NOTIFICATION)还可以选择ALARM,MUSIC,NOTIFICATION,RING,SYSTEM,VOICE_CALL之一国光的实际测试:
termux-vibrate[选项]选项细节:
-f
termux-wifi-enable[true|false]交互对话框部件这个功能有点强大,可以与用户进行交互。输出格式是JSON
termux-dialog[选项]基本用法:
-l,list列出所有小部件及其选项-t,title标题设置输入对话框的标题(可选)选项说明具体看下面国光的实际演示:
confirm-显示确认对话框[-i提示]文本提示(可选)[-t标题]设置对话框标题(可选)国光的演示:
termux-dialogconfirm-i'HelloTermux'-t'confirm测试'
{"code":0,"text":"yes"}checkboxPropertiescheckbox-使用复选框选择多个值[-v",,,"]多个值用逗号隔开(必选)[-t标题]设置对话框的标题(可选)国光的演示:
termux-dialogcheckbox-v'Overwatch,GTA5,LOL'-t'平时喜欢玩啥游戏'
返回内容:
{"code":-1,"text":"[Overwatch]","values":[{"index":0,"text":"Overwatch"}]}counterPropertiescounter-选择指定范围内的数字[-r最小值,最大值,开始值]3个值用逗号隔开(可选l)[-t标题]设置对话框的标题(可选)国光的演示:
{"code":-1,"text":"181"}datePropertiesdate-选择一个日期e[-d"dd-MM-yyyyk:m:s"]用于日期小部件输出的SimpleDateFormat模式(可选)[-t标题]设置对话框的标题(可选)国光的演示:
termux-dialogdate-d'yyyy-MM-dd'-t'你的出生日期是'
{"code":-1,"text":"2020-04-20"}radioPropertiesradio-从单选按钮中选择一个值[-v",,,"]多个值用逗号隔开(必选)[-t标题]设置对话框的标题(可选)国光的演示:
termux-dialogradio-v'小哥哥,小姐姐'-t'你的性别是'
{"code":-1,"text":"小哥哥","index":0}sheetPropertiessheet-从底部工作表中选择一个值[-v",,,"]多个值用逗号隔开(必选)[-t标题]设置对话框的标题(可选)国光的演示:
termux-dialogsheet-v'菜鸡,国光'
{"code":0,"text":"国光","index":1}spinnerPropertiesspinner-从下拉微调器中选择一个值[-v",,,"]多个值用逗号隔开(必选)[-t标题]设置对话框的标题(可选)国光的演示:
termux-dialogspinner-v'国光,光光'-t'你最喜欢的博主是'
{"code":-1,"text":"国光","index":0}textPropertiestext-输入文本(如果未指定小部件,则为默认值)[-i提示]文本提示(可选)[-m]多行输入(可选)*[-n]输入数字(可选)*[-p]输入密码(可选)[-t标题]设置对话框的标题(可选)*不能将[-m]与[-n]一起使用国光的演示:
termux-dialogtext-i'密码:'-t'请输入核弹爆炸密码'
termux-dialogtime-t'你每天多少点睡觉'
{"code":-1,"text":"19:30","index":0}Termux:Boot用于将自定义命令开机自启使用,不要每次重启完重复敲命令了。(当然你的手机性能很强,从来需要重启)
这是一个收费的应用,一贫如洗的国光是买不起的,但是还得写一下这个,万一真的有壕买了这个APP呢
安装完成启动这个应用程序后,创建~/.termux/boot/目录,将需要开机自启的脚本放在这个目录下面,如果有多个文件的话,将他们按照排序顺序执行,如果要确保设备进入睡眠状态,建议脚本前面先运行termux-wake-lock命令。
下面是一个开机自启sshd服务的的脚本,文件的完整路径为:~/.termux/boot/start-sshd内容如下:
#!/data/data/com.termux/files/usr/bin/shtermux-wake-locksshdTermux:Float可以将Termux悬浮窗形式显示,看上去比较酷炫。
这是依然是一个收费的应用,尽管它看上去很酷炫,但是家境贫寒的国光还是买不起,下面就晒一个效果图吧:
Termux官方提供了终端的一些美化方案
可以将Termux悬浮窗形式显示,看上去比较酷炫。
这是还是一个收费的应用,虽然我们前面的一键安装脚本已经可以达到这个美化效果了,但是如果你想尝试一下官方的可以试试看。
提供了Andorid的Termux小部件。
依然是收费插件,比较冷门,使用场景很少,不推荐大家入手这个,所以用法这里国光就不列出了。(这个偷懒的理由很好2333)
《黑客帝国》的代码雨视觉特效。
pkginstallcmatrixcmatrix
cowsay命令是一个有趣的命令,它会用ASCII字符描绘牛,羊和许多其他动物,还可以附带上个自定义文本,很巧的是Termux也封装了这个工具。
pkgintallcowsaycowsay-f动物内容内置如下动物:
$cowsay-llistCowfilesin/data/data/com.termux/files/usr/share/cows:beavis.zenbongbud-frogsbunnycheesecowerdaemondefaultdragondragon-and-cowelephantelephant-in-snakeeyesflaming-sheepghostbustershead-inhellokittykisskittykoalakoshluke-koalameowmilkmoofasamoosemutilatedrensheepskeletonstegosaurusstimpythree-eyesturkeyturtletuxvadervader-koalawww国光的简单示例:
cowsay-feyes'法外狂徒张三'
FIGlet是创建一个简单的命令行实用程序,用于创建ASCIIlogo。
pkginstallfigletfiglet-f字体'文本内容'内置如下样式:
ls$PREFIX/share/figlet646-ca.flc646-jp.flc8859-7.flccircle.tlfmini.flfsmbraille.tlf646-ca2.flc646-kr.flc8859-8.flcdigital.flfmnemonic.flfsmmono12.tlf646-cn.flc646-no.flc8859-9.flcemboss.tlfmono12.tlfsmmono9.tlf646-cu.flc646-no2.flcascii12.tlfemboss2.tlfmono9.tlfsmscript.flf646-de.flc646-pt.flcascii9.tlffrango.flcmoscow.flcsmshadow.flf646-dk.flc646-pt2.flcbanner.flffuture.tlfpagga.tlfsmslant.flf646-es.flc646-se.flcbig.flfhz.flcscript.flfstandard.flf646-es2.flc646-se2.flcbigascii12.tlfilhebrew.flcshadow.flfterm.flf646-fr.flc646-yu.flcbigascii9.tlfivrit.flfslant.flfupper.flc646-gb.flc8859-2.flcbigmono12.tlfjis0201.flcsmall.flfushebrew.flc646-hu.flc8859-3.flcbigmono9.tlfkoi8r.flcsmascii12.tlfuskata.flc646-irv.flc8859-4.flcblock.flflean.flfsmascii9.tlfutf8.flc646-it.flc8859-5.flcbubble.flfletter.tlfsmblock.tlfwideterm.tlf国光的演示:
figlet-ffuture'www.sqlsec.com'
在Linux终端中伪造好莱坞黑客屏幕,假装自己是一名黑客。
pkginstallhollywoodhollywood
Neofetch是一个简单但有用的命令行系统信息工具。它会收集有关系统软硬件的信息,并在终端中显示结果。
pkginstallneofetchneofetch
彩虹貓(英语:NyanCat)是在2011年4月上传在Youtube的视频,并且迅速爆红于网络,並在2011年YouTube浏览量最高的视频中排名第五,B站这个小猫也很多,主要是BGM比较魔性,感兴趣的朋友可以自己去搜索看看。
pkginstallnyancatnyancat
使用Ctrl+C快捷键退出魔性循环
Screenfetch是一个适用于Linux的小工具,用于显示系统信息及ASCII化的Linux发行版图标。
pkginstallscreenfetchscreenfetch
显示其他Linux发行版的logo:
screenfetch-A发行版现在内置的发行版logo有:
ALDOS,AlpineLinux,AmazonLinux,Antergos,ArchLinux(OldandCurrentLogos),ArcoLinux,ArtixLinux,blackPantherOS,BLAG,BunsenLabs,CentOS,Chakra,Chapeau,ChromeOS,ChromiumOS,CrunchBang,CRUX,Debian,Deepin,DesaOS,Devuan,Dragora,elementaryOS,EuroLinux,EvolveOS,Sulin,Exherbo,Fedora,Frugalware,Fuduntu,Funtoo,Fux,Gentoo,gNewSense,GuixSystem,HyperbolaGNU/Linux-libre,januslinux,JiyuuLinux,KaliLinux,KaOS,KDEneon,Kogaion,Korora,LinuxDeepin,LinuxMint,LMDE,Logos,Mageia,Mandriva/Mandrake,Manjaro,Mer,Netrunner,NixOS,OBRevenge,openSUSE,OSElbrus,OracleLinux,ParabolaGNU/Linux-libre,Pardus,ParrotSecurity,PCLinuxOS,PeppermintOS,ProxmoxVE,PureOS,QubesOS,Raspbian,RedHatEnterpriseLinux,ROSA,Sabayon,SailfishOS,ScientificLinux,Siduction,Slackware,Solus,SourceMageGNU/Linux,SparkyLinux,SteamOS,SUSELinuxEnterprise,SwagArch,TinyCore,Trisquel,Ubuntu,Viperr,VoidandZorinOSandEndeavourOS内置的操作系统logo有:
Dragonfly/Free/Open/NetBSD,Haiku,MacOSX,Windowssl某编程牛人也经常犯把ls敲成sl的错误,所以他自己编了一个程序娱乐一下,这个程序的作用很简单,就是当你输入sl的时候终端会出现一个火车呼啸而过~~
pkginstallslsl
toilet能用字母拼写出更大字母的工具,具体拼出什么字由命令后面的参数决定,不仅如此,它还能打印出各种风格的效果,比如彩色,金属光泽等。
pkginstalltoilettoilet-f字体-F颜色参数'文本信息'内置如下字体:
$ls$PREFIX/share/figletascii12.tlfbigmono12.tlfemboss2.tlfmono9.tlfsmblock.tlfwideterm.tlfascii9.tlfbigmono9.tlffuture.tlfpagga.tlfsmbraille.tlfbigascii12.tlfcircle.tlfletter.tlfsmascii12.tlfsmmono12.tlfbigascii9.tlfemboss.tlfmono12.tlfsmascii9.tlfsmmono9.tlf内置如下颜色效果:
$toilet--filterlistAvailablefilters:"crop":cropunusedblanks"gay":addarainbowcoloureffect"metal":addametalliccoloureffect"flip":fliphorizontally"flop":flipvertically"180":rotate180degrees"left":rotate90degreescounterclockwise"right":rotate90degreesclockwise"border":surroundtextwithaborder