1. 手机上学安全技术,先把这几件事想明白
手机上折腾网络安全工具这件事,我从 2019 年前后就开始断断续续在玩,最开始纯粹是出差路上无聊,想在酒店里跑点脚本,后来慢慢发现,手机其实能干的事情比大多数人想象的多不少。搜索"黑客 手机黑客软件"的人,我猜大多数心里想的其实是同一件事:手上只有一部手机,没电脑,能不能也开始学点网络安全的东西?答案是能,但前提是你得先搞清楚手机这个载体的边界在哪,不然很容易装了七八个 App,最后一个都没用明白。
先明确一件事:我给"手机黑客软件"下的定义是手机端的网络安全学习与测试工具链,不是那些来路不明、号称一键入侵别人手机号、一键破解别人账号的所谓神器。后者基本只有两种结局,一种是骗你付钱然后跑路,另一种是它本身就是个窃取信息的木马。真正的安全从业者手里没有"一键"这种东西,所有能力都是从命令行、协议理解、脚本编写一层层堆起来的,工具只是把已有知识放大的杠杆,而不是替代知识的捷径。
为什么值得在手机上折腾?三个很现实的原因。第一是碎片时间的利用率,等地铁、排队、坐高铁的十几二十分钟,足够你敲几条命令、刷一道 CTF 的入门题,长期积累下来的总量很可观。第二是随身可及的实验环境,你家里的路由器、自己的笔记本、自己搭建的虚拟机,随时掏手机就能连上去看状态,不用非得坐在台式机前。第三是手机会逼你回到最本质的地方——没有图形界面,没有鼠标右键,你只能靠命令行和文本,这反而让 Linux 基础打得比在图形化环境里更扎实。
但边界也必须说清楚,而且这是最不能含糊的一点。你只能对自己拥有或已获得明确书面授权的设备与系统做测试。自己家的路由器、自己名下的服务器、自己在虚拟机里搭的靶机,随便你怎么折腾;公司内网、学校网络、公共 WiFi 里的其他设备、任何第三方网站,没拿到授权就去做端口扫描、漏洞探测、密码尝试,在法律上都属于未授权访问或非法侵入计算机信息系统,是要承担责任的,不是"我只是看看"就能过去的。很多新手栽的第一个跟头不是技术问题,而是根本没意识到"扫描"这个动作本身就已经越界了。所以后面我讲的所有操作,你都要默认在"自己的设备或授权靶场"这个前提下执行。
1.1 手机到底能替代电脑到什么程度
这个问题我问过自己很多次,也给不少人解答过,结论是:手机能替代电脑大约 40% 的学习场景,剩下 60% 还是得靠电脑。能替代的那部分包括:Linux 命令行练习、Python 与 Bash 脚本编写、基础网络探测、SSH 连接远程靶场、CTF 入门题、笔记整理与知识管理、以及阅读文档。这些场景对算力和外设的要求都很低,手机完全扛得住。
替代不了的部分也很明确。完整的 Web 渗透测试需要浏览器插件、拦截工具、多标签调试,手机上的浏览器生态撑不起这套工作流;二进制逆向需要 IDA、Ghidra 这类重型工具,跑不动;内网横向移动需要对多层网络拓扑做可视化,手机屏幕太小;虚拟化环境就更不用说了,手机上的"虚拟机"基本是模拟层或者容器化方案,性能和兼容性都有限。所以正确的定位是"补充终端",不是"主力工作台"。
我自己的搭配方式是:手机上常年装着终端模拟器和一个 SSH 客户端,用来做日常练习和远程管理;真正的项目、靶场实战、报告撰写,还是在电脑上完成。两边通过 Git 仓库同步脚本和笔记,手机上想继续就往仓库里推一下,电脑上拉下来接着写,这个流程跑了几年下来非常顺手。
1.2 三条能力线,决定了你该装什么
判断一款手机工具值不值得装,我会看它落在哪条能力线上。第一条是命令行线,核心是把一个类 Unix 环境搬到手机上,让你能跑nmap、curl、python、ssh这些基础工具,这条线上的代表就是 Termux 和 iSH。第二条是集成测试环境线,指的是把一整套预配置好的测试套件打包进手机,Kali NetHunter 是这个方向上的标杆,但它对设备有硬性要求。第三条是辅助与练习线,包括 SSH 客户端、文本编辑器、密码管理、在线靶场的浏览器入口,这部分门槛最低,任何人都能上手。
新手最容易犯的错误是跳过第一条直接冲第二条,看到"渗透测试"几个字就去刷机装 NetHunter,结果设备变砖或者装完发现不知道敲什么命令。我的建议顺序很明确:先在 Termux 或者 iSH 上把 Linux 基础命令、管道重定向、权限概念、网络分层模型这些内容过一遍,能独立写出一个十几行的 Python 探测脚本,再去考虑上不上 NetHunter。这个过程大概需要两到四周的高频使用,之后你会发现自己看任何工具文档都不再发怵。
1.3 别被"黑客软件"这四个字带偏
市面上打着这个旗号的 App 我试过不少,说实话,绝大部分是两种货色。一种是套壳的信息聚合网站,点进去是贴满广告的文章列表;另一种是功能极度受限的所谓"扫描器",只能扫个局域网设备列表,还要看广告解锁。这些不是不能用,但把它们当成学习主线就完全跑偏了。
真正有价值的工具都有一个共同特征:它是通用能力的载体,而不是某个具体功能的封装。Termux 本身不做任何安全相关的事情,它只是给你一个包管理器和终端,但正因为通用,你可以在上面装几百种工具。反过来,一个 App 如果只提供"一键检测路由器弱口令"这种功能,那它教会你的东西几乎为零,因为你不知道它背后做了什么、为什么这么做、失败了该怎么排查。
还有一个更隐蔽的坑:不要在手机上安装任何来路不明的、要求大量敏感权限的所谓安全工具。这类 App 有很大比例在做的是收集你的通讯录、短信、位置信息。判断标准很简单,看它申请的权限和它声称的功能是否匹配,一个"网络检测工具"要读取你的短信,那不用犹豫,直接卸载。
2. 三款主力工具,我逐个拆给你看
这三款是我实际长期用过、并且愿意推荐给别人的。选它们的标准不是功能最多,而是能在手机上真正跑起来、出错能被排查、长期使用不会给你添麻烦。下面按 Android 到 iOS 的顺序讲,每款我都会说清楚它适合谁、不适合谁、以及我最常用它做什么。
2.1 Termux:Android 上最该先装的一个
Termux 是一个 Android 平台上的终端模拟器加软件包管理环境,它不需要 root,不需要刷机,安装完就是一个可以用的类 Linux 环境。它的核心技术点在于,它用一套自己的 APT 包管理体系,把大量开源软件交叉编译到 Android 上,包括 Python、Node.js、GCC、Git、OpenSSH、nmap、curl、wget、Vim 等等,覆盖了日常学习和脚本开发的绝大部分需求。
我为什么把它排在第一位?因为它把门槛降到了几乎为零。你不需要理解 bootloader、不需要担心变砖、不需要研究设备兼容性列表,下载安装就能用,卸载就干净清除。对于"我只想先试试手机能不能用"的人来说,这是唯一合理的起点。
它适合的场景包括:写和调试 Python / Bash 脚本、练习 Linux 命令、连接远程服务器做日常运维、跑一些轻量的网络探测、通过 SSH 连靶场刷题、用 Git 管理自己的脚本仓库。不太适合的场景是:需要原始套接字权限的高级扫描、需要内核模块的抓包分析、以及任何要求 root 才能完成的操作。
注意:Termux 在 Google Play 上的版本已经长期停止维护,功能落后且可能存在依赖问题,建议从 F-Droid 或者项目的官方发布页面获取安装包,架构优先选 arm64-v8a。
2.2 Kali NetHunter:把整套测试环境塞进口袋
Kali NetHunter 是 Kali Linux 官方推出的移动端版本,本质上是一套运行在 Android 之上的 Kali 根文件系统,配合一个管理 App 和一个专门的终端 App 使用。它把 Kali 里常见的一批工具预先集成好了,再通过 chroot 的方式在 Android 内核上跑起来,形成一个相对完整的测试环境。这个方案的技术含量确实高,用起来也确实爽,但它的前置条件相当硬。
首先,你的设备必须在官方支持列表里,主要是 Google Pixel 系列、一加的部分机型、以及少数小米和三星机型。其次,你需要解锁 bootloader、刷入第三方恢复环境、获取 root 权限,这一套流程走下来,轻则数据全清,重则设备无法启动。第三,完整的 Kali chroot 需要好几 GB 的存储空间,桌面环境还要额外占用,并且跑起来之后耗电和发热都很明显。
我个人的判断标准是这样的:如果你手上有一台闲置的、支持列表里的旧手机,愿意花一个周末研究刷机流程,并且已经具备基本的 Linux 操作能力,那 NetHunter 值得折腾一次,它能让你在完全没有电脑的情况下完成一些相当完整的工作流。但如果你只有一台主力机,或者对刷机流程完全没有概念,那我建议先放一放,把 Termux 用熟了再说。因为刷机失败带来的麻烦,远超它能给你带来的学习收益。
它适合的场景:授权的无线网络评估、随身携带的应急测试环境、在隔离环境中验证某些攻击手法的原理。不适合的场景:日常主力机、对数据安全要求高的设备、以及任何你没有明确授权的目标。
2.3 iSH 和 a-Shell:iOS 用户的现实选择
iOS 这边的限制比 Android 严格得多,你没法像在 Android 上那样自由地安装终端环境,因为系统不允许动态加载可执行代码。所以 iOS 上的方案都是"模拟层"或者"内建命令集"这两条路。
iSH 走的是模拟路线,它在 iOS 上模拟了一个 x86 的 Alpine Linux 环境,你可以用apk包管理器安装软件。因为是模拟执行,性能有明显损耗,跑重一点的编译任务会非常慢,但用来做命令行练习、写脚本、跑轻量工具是完全够用的。我用它在 iPad 上写 Python 脚本、做文本处理、练习 Vim 操作,体验相当不错。
a-Shell 走的是另一条路,它本身是用原生代码实现的,内建了一批常用命令,包括 Python、Lua、FFmpeg、curl、ssh 等,响应速度比 iSH 快很多,但没有完整的包管理体系,你装不了任意软件。两者互补使用效果最好:需要装工具的时候用 iSH,追求交互速度和日常脚本的时候用 a-Shell。
iOS 用户还有一个通用技巧:所有在线靶场、文档、教程都可以直接在浏览器里访问,配合系统的分屏功能和蓝牙键盘,实际体验并不比小屏笔记本差多少。真的要说限制,主要是没法做需要原始网络权限的操作,这个在 iOS 上基本没有绕过的可能,接受它就好。
| 工具 | 平台 | 是否需要 root | 包管理 | 适合人群 | 主要短板 |
|---|---|---|---|---|---|
| Termux | Android | 否 | APT | 所有 Android 新手 | 无原始套接字权限 |
| Kali NetHunter | Android | 是 | APT + Kali 源 | 有闲置设备的老手 | 门槛高、风险大 |
| iSH | iOS | 否 | APK(Alpine) | iOS 命令行爱好者 | 模拟执行、性能有限 |
| a-Shell | iOS | 否 | 无 | 追求响应速度的 iOS 用户 | 无法自由装软件 |
3. 从零到跑通:Termux 完整配置实录
这一节我把 Termux 从安装到能干活的全过程拆开讲,每一步都说明为什么这么做。你照着走一遍,大概半小时能搞定,之后就能开始真正学习了。
3.1 安装来源与镜像源替换
安装这一步前面提过,重点是别从应用商店拿旧版本。装完之后第一件事不是急着敲命令,而是换镜像源。原因很直接:默认源在国内访问速度很慢,pkg update经常卡住或者超时,而术语包的数量又很多,一次升级动辄几百兆,用默认源会浪费大量时间。
换源用内置命令就行:
termux-change-repo执行后会出来一个文本菜单,先选要替换的仓库组,再选镜像站点。界面上会列出几个选项,选一个国内的镜像即可。这个命令的好处是它会自动帮你改好配置文件,不用手动编辑 sources.list,比自己改文件不容易出错。
换完之后执行初始化和升级:
pkg update && pkg upgrade -y这一步会拉取最新的包索引并升级已安装的组件,第一次跑可能需要几分钟。如果中途出现交互式提问,一般问的是配置文件是否保留,选择默认项即可。升级完成后建议再执行一次索引更新,确认没有报错。
注意:
pkg upgrade过程中如果被打断,可能会导致依赖状态异常。遇到这种情况执行pkg install -f修复依赖,不要直接删数据重装。
3.2 基础工具链一次性装齐
我习惯一次性把常用工具装完,避免后面写脚本时反复中断去装东西。下面这一条命令覆盖了大多数基础需求:
pkg install -y python git curl wget vim openssh nmap termux-api逐个说一下为什么选它们。python是脚本编写的主力,后面写探测脚本、解析数据、自动化处理都靠它。git用来管理你自己的脚本仓库和笔记,手机电脑同步全靠它。curl和wget是网络请求和文件下载的基础工具,调试接口的时候离不开。vim是终端下的编辑器,手机上没有图形化编辑器,必须掌握一个。openssh提供 SSH 客户端和服务端,客户端用来连靶场和远程主机,服务端用来把手机变成可被连接的对象。nmap是网络探测的经典工具,学习网络知识绕不开它。termux-api负责让脚本调用手机硬件能力,比如通知、传感器、剪贴板。
装完之后立刻配置存储访问权限,这一步很多人会忘:
termux-setup-storage执行后系统会弹出权限请求,允许之后 Termux 会在主目录下生成一个storage目录,里面软链接到了手机的相册、下载、文档等位置。没有这一步,你的脚本无法读写手机上的文件,用起来会非常别扭。
3.3 让它变成一台随身服务器
Termux 有一个被严重低估的能力:它可以在手机上跑 SSH 服务,让你的电脑反过来连手机。这个玩法在几个场景下特别有用。比如你在外面用手机写了一半脚本,回到电脑前想接着写,直接 SSH 过去就能在电脑的大屏幕和键盘上操作,文件还在手机里,不用来回拷贝。再比如做演示的时候,手机当服务端,电脑当客户端,展示效果很直观。
开启的流程是先用whoami拿到当前用户名,然后设置密码,再启动服务:
whoami passwd sshd ifconfigwhoami的输出类似u0_a123这样的字符串,这是你的登录名。passwd会让你输两遍密码,设置好之后电脑端就能用这个密码登录。sshd启动 SSH 服务,默认监听 8022 端口。ifconfig用来查看手机在局域网里的 IP 地址,找wlan0那一段的inet后面的数字。
电脑端连接命令是这样的:
ssh -p 8022 u0_a123@192.168.1.5端口一定要带-p 8022,因为 Termux 用非标准端口,这是为了避开系统对低位端口的限制。连接成功后你就等于在手机上操作了,用电脑的键盘敲命令,效率提升非常明显。
这里有个实际经验:手机在息屏之后,系统可能会限制后台进程,导致 SSH 会话断开。解决办法是在手机的电池设置里,把 Termux 加入"不受限制"的应用列表,关闭针对它的省电优化。这一步不做的话,你会发现连接经常莫名其妙断掉,还以为是网络问题。
3.4 NetHunter 的前置条件与刷机思路
如果你决定要上 NetHunter,我把关键的前置步骤和风险点列一下,但具体操作请严格对照官方文档和设备专属教程,因为不同机型的流程差异很大,我这里给的是通用思路。
第一步是确认设备支持情况,去项目的官方设备列表页查你的机型,没在列表里的不要硬上。第二步是备份数据,并且明确知道解锁 bootloader 会清空设备上的一切。第三步是解锁 bootloader,这一步需要通过开发者选项开启 OEM 解锁,然后用平台工具执行解锁命令。第四步是刷入第三方恢复环境。第五步是通过恢复环境获取 root 权限。第六步才是安装 NetHunter 本体。
整个过程里最容易出问题的环节是第二步到第四步之间的驱动和版本匹配。我在一台旧 Pixel 上折腾的时候,卡在驱动识别上整整一个下午,最后发现是数据线的问题,换了一根原装线立刻就通了。这种事情在教程里基本不会写,但实际遇到的概率非常高。
装好之后的日常使用也要有心理准备。完整系统需要几个 GB 空间,启动之后内存占用明显,跑一段时间机身会发热。我的做法是把它当成一个"需要时才开的工具",平时关掉,有明确任务的时候再启动,用完就退出。这样既省电,也避免长期暴露在潜在风险里。
4. 工具之外的真正门槛:靶场与练习闭环
装好工具只是第一步,接下来才是决定你能不能真正学到东西的部分。我见过太多人卡在这个阶段:终端打开了,命令也会敲了,但不知道该练什么,于是慢慢就把工具丢在一边了。解决办法是给自己建立一个稳定的练习闭环,而靶场就是闭环里最重要的那块拼图。好消息是,主流靶场基本都能在手机上完成,尤其是入门阶段。
4.1 手机上刷 SSH 类靶场完全可行
入门阶段我最推荐的是 SSH 类型的命令行靶场,因为它的技术栈极其简单——你只需要一个 SSH 客户端,连上去,在对方的受限环境里找线索、拿密码、进入下一关。整个过程不需要图形界面,不需要浏览器插件,手机上操作毫无障碍。
以最经典的新手靶场为例,连接命令大致是这样的:
ssh bandit0@bandit.labs.overthewire.org -p 2220连上去之后你会看到一个非常简陋的命令行环境,任务是利用已有的命令和权限找到下一关的密码,然后用那个密码切换到下一个账户。这类靶场设计得极其巧妙,它不教你任何攻击手法,只逼你把 Linux 命令用熟:文件查找、权限查看、编码转换、管道组合、文本处理。刷完前二十关,你对命令行的理解会有质的变化。
手机上刷这类靶场有几个实用技巧。第一是提前把常用命令的用法记在手机备忘录里,尤其是find、grep、awk、base64、sort、uniq这几个的组合用法,卡住的时候翻一眼比重新搜索快得多。第二是善用 Termux 的多会话功能,一个会话用来操作,另一个用来看笔记或者执行辅助命令。第三是不要怕重复,同一关用不同方法解出来,比一口气通关更有价值。
4.2 Web 方向与 CTF 的线上练习
Web 安全是需求量最大的方向,也是最适合手机上机练的。原因是绝大部分 Web 靶场都是纯粹的网页应用,你只需要一个浏览器就能做题,手机上的浏览器完全够用。国际上有几个长期免费的在线学习平台,提供了大量带讲解的 Web 安全实验,从最基础的注入漏洞到复杂的逻辑缺陷层层递进,每道题都有明确的场景和验证方式。
手机上做这类题的体验,说实话不如下靶场那么流畅,因为浏览器标签页切换、查看请求响应、构造参数这些操作在触屏上效率偏低。我的应对方式是:简单题直接在手机浏览器做,遇到需要反复调试的复杂题,先记下思路,等有电脑的时候再动手。这样既能利用碎片时间保持学习节奏,又不会因为体验太差而放弃。
CTF 比赛方面,现在很多线上赛的题目都是 Web 和杂项类,移动端参与完全没问题。我的建议是先从个人赛或者小型练习赛开始,找几道方向明确的入门题做完,感受一下比赛的节奏和出题思路。不要一上来就冲大型国际赛,那种赛事里大量题目需要二进制分析和逆向工程,手机上根本没法做,容易产生挫败感。赛事日程可以在各大 CTF 信息聚合站点查询,题解往往在比赛结束后几天内就会大量出现,看完题目先自己憋一憋,再看别人的思路,学习效率最高。
4.3 一条能落地的学习路线
说了这么多工具和靶场,最后必须给一个顺序,不然新手容易东一榔头西一棒子。下面这条路线是我自己走过一遍、也推荐给过不少人的。
第一阶段,两到三周,目标是 Linux 基础。任务是在 Termux 里熟练使用文件操作、权限管理、管道重定向、文本处理命令,同时在命令行靶场刷掉前二十关。这个阶段不要碰任何安全工具,专心把命令行练成肌肉记忆。
第二阶段,三到四周,目标是网络基础。任务是用nmap在自己的家庭网络里做扫描练习,理解端口状态的含义,搞清楚 TCP 三次握手、DNS 解析、HTTP 请求响应这几个核心概念。同时开始写 Python 脚本,做简单的端口探测和数据解析,把编程能力和网络知识结合起来。
第三阶段,四到六周,目标是 Web 安全入门。系统学习 Web 应用的常见漏洞类型,做对应的在线实验,每做完一个漏洞,自己总结"它为什么会产生、怎么被发现、怎么被修复"这三段内容。这个总结习惯极其重要,它决定了你是在背知识点还是在建立认知。
第四阶段之后就看个人方向了。想做防御方向就往日志分析、流量特征、检测规则走;想做测试方向就往更深的漏洞利用和工具链走;想做研究就往二进制、逆向、协议分析走。这个阶段手机上能做的就有限了,需要正经的工作环境。
5. 常见报错与踩坑实录
这一节是我自己踩过以及帮别人排查过的高频问题,按出现阶段分类整理。很多人卡住不是因为技术难,而是因为一个很小的配置问题找不到原因,最后放弃了,实在可惜。
5.1 安装与初始化阶段的坑
| 报错信息 | 常见原因 | 解决思路 |
|---|---|---|
Unable to locate package xxx | 包索引没更新,或包名拼写错误 | 先执行pkg update,再确认包名 |
Could not resolve host | DNS 解析失败 | 检查网络连接,或更换镜像源后重试 |
Hash Sum mismatch | 镜像同步中或本地缓存损坏 | 执行pkg clean后重新更新 |
Permission denied | 未授予存储权限或文件权限不足 | 执行termux-setup-storage,检查文件模式 |
There is no space left | 存储空间不足 | 清理缓存,卸载不用的包 |
| 中文显示为方块或乱码 | 缺少字体或未设置语言环境 | 安装字体包,设置LANG变量 |
这张表里的每一行我都实际遇到过。Could not resolve host那次印象最深,我以为是网络断了,反复切换 WiFi 折腾了半小时,最后发现是换源之后配置文件里留了一条失效的地址,改掉就好了。所以遇到解析类报错,第一反应应该是去看源配置,而不是怀疑网络本身。
Hash Sum mismatch这个错误经常出现在换源之后的第一次更新。原因是原源和新源的包版本可能不一致,本地缓存里有旧数据。解决办法很简单,清掉缓存重新拉,一般一次就好。如果反复出现,说明选的那个镜像正在同步中,换一个镜像站即可。
5.2 运行阶段的坑
第一个高频问题是后台被杀。表现是脚本跑到一半突然停了,或者 SSH 会话无缘无故断开。原因基本都是系统对 Termux 做了省电限制。解决办法是在系统设置的应用管理里找到 Termux,把电池策略改成"无限制",同时在最近任务列表里给它加锁,防止被一键清理掉。
第二个问题是nmap的扫描结果和预期不符。这里的关键知识点是:非 root 环境下,nmap只能做 TCP connect 扫描,不能做 SYN 扫描,也不能发原始数据包。所以如果你照着某些教程敲了-sS参数,会直接报权限错误。解决办法是把扫描类型改成-sT:
nmap -sT -p 1-1024 192.168.1.1这个限制不是缺陷,而是 Android 的权限模型决定的,理解这一点比想办法绕过更重要。
第三个问题是 Python 库装不上。常见原因是某些库依赖编译工具链,而 Termux 上默认没有完整的构建环境。解决办法是先装基础开发包:
pkg install -y build-essential python-dev clang然后再尝试安装。如果还是很慢,可以换成国内的 PyPI 镜像来加速:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple第四个问题是脚本在电脑上跑得好好的,在手机上就出错。这类问题九成出在路径和权限上。手机上的存储路径和电脑完全不同,而且外部存储可能不支持某些文件操作。我的经验是所有脚本尽量在 Termux 的主目录里跑,需要读写手机文件时通过~/storage这个软链接走,不要硬编码绝对路径。
5.3 比技术问题更重要的几个习惯
技术坑可以查文档解决,习惯上的坑只能靠自己警醒。下面这几条是我用了几年之后总结出来的,每一条背后都有具体教训。
第一条,别在公共网络里做任何探测动作。你在咖啡馆连上 WiFi,随手扫一下网段,看起来是无害的好奇心,但如果被网络管理方发现,你是在解释不清的。而且从实践角度看,你根本不知道那个网络里挂了什么监控。练习就在自己家里做。
第二条,所有测试目标都必须是你自己的或者有授权的。前面已经强调过,这里再强调一次,因为这是最容易出事的地方。判断标准很清晰:这台设备是不是你买的?这个系统是不是你搭的?这个网站有没有明确授权给你测试?三个问题有一个答不上来,就不要动手。
第三条,手机上装的东西要定期清理。安全工具类的软件权限都很高,长期堆在手机里是个隐患。我的做法是每季度过一遍,三个月没打开过的直接卸载,需要的时候再装,反正大多数工具都是几分钟就能装回来的。
第四条,重要数据一定要有离线备份。我给身边人讲过很多次这个道理,但真正去做的人不多。你不一定会被攻击,但手机丢失、进水、系统崩溃这些事发生的概率一点都不低。备份的原则是三点:至少两份、存在不同介质上、其中一份离线。手机照片和文档可以用系统自带的云同步,但涉及工作资料的部分,我习惯再往移动硬盘里拷一份,放在抽屉里。
第五条,每天花十分钟看安全资讯。不是让你追热点,而是保持对攻击手法演进的感知。很多新漏洞从披露到被大规模利用往往只有几天时间,知道得早一点,你就能早点检查自己的设备和服务有没有受影响。手机上装个 RSS 阅读器,订阅几个权威机构的安全公告就够了,不需要刷社交媒体。
最后再分享一个我觉得很有用的小习惯:给每个学过的知识点写一条不超过一百字的摘要,存在手机备忘录里,打上统一标签。半年之后回过头翻,你会清楚看到自己走过的路径,也会发现哪些内容是当时以为懂了其实没懂。这个动作看起来笨,但它是把碎片时间的学习真正沉淀下来的唯一办法,我坚持了三年多,受益非常大。