写在前面
之前小孩子不懂事,乱配这台 M1 mac mini 的环境,配得乱七八糟的,我又有环境洁癖,所以重置了重新配,留个记录做存档。
ClashX Pro 不太清楚这是什么东西,但是非常重要,略。
Homebrew 安装与配置 一个软件包管理系统,类似于 Ubuntu 的 apt-get,可以用来安装环境,也可以用来安装软件。
终端没有走代理,所以需要让终端走代理的端口。
1 2 3 4 5 6 7 8 9 export https_proxy=http://127.0.0.1:7890 http_proxy=http://127.0.0.1:7890 all_proxy=socks5://127.0.0.1:7890/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh) " echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/your_user_name/.zprofileeval "$(/opt/homebrew/bin/brew shellenv) "
常用命令:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 brew update brew search [关键词] brew --cache brew --prefix brew info [软件名] brew list brew list --formulae brew list --cask brew list <package> brew outdated brew upgrade brew upgrade <package> brew cleanup brew uninstall [软件名] brew uninstall --force brew services list: brew services run [服务名] brew services start [服务名] brew services stop [服务名] brew services restart
Homebrew cask install 和普通 install 区别:
Homebrew Cask 先下载软件后解压到统一的目录中(/opt/homebrew-cask/Caskroom
),然后再软链到 ~/Applications/
目录下,省掉了自己下载、解压、拖拽安装等步骤,同样的,卸载相当简单和干净,一句命令就可以完成。
安装 Homebrew cask :
更新 Homebrew Cask 命令:
1 brew update && brew upgrade brew-cask && brew cleanup
HomeBrew Cask 没有更新软件的命令,所以如果要更新软件得先卸载再安装:
1 brew cask uninstall APP && brew cask install APP
换源 1 2 3 4 5 6 7 export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.ustc.edu.cn/brew.git" echo 'export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.ustc.edu.cn/brew.git"' >> ~/.zshrcexport HOMEBREW_CORE_GIT_REMOTE="https://mirrors.ustc.edu.cn/homebrew-core.git" export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.ustc.edu.cn/homebrew-bottles" export HOMEBREW_API_DOMAIN="https://mirrors.ustc.edu.cn/homebrew-bottles/api" brew update
重置:
1 2 3 4 5 unset HOMEBREW_BREW_GIT_REMOTEgit -C "$(brew --repo) " remote set-url origin https://github.com/Homebrew/brew git -C "$(brew --repo homebrew/core) " remote set-url origin https://github.com/Homebrew/homebrew-core.git brew update
系统设置 打开终端输入命令就会提示安装,如果没有提示可以在终端内用命令安装:
修改启动台行列数 1 2 3 4 5 6 7 8 9 10 11 12 defaults write com.apple.dock springboard-columns -int 9 defaults write com.apple.dock springboard-rows -int 6 killall Dock defaults write com.apple.dock springboard-rows Default defaults write com.apple.dock springboard-columns Default
终端配置 iTerm2 终端工具,支持主题配置、智能提示、历史记录等等。
1 brew install --cask iterm2
配置:
oh-my-zsh 用于管理 zsh
的配置,zsh 的美化增强脚本,可以把终端搞得花里胡哨的,相关配置存储在 ~/.zshrc
中。
1 sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh) "
插件:
1 2 3 git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom} /plugins/zsh-autosuggestions git clone https://github.com/zsh-users/zsh-completions ${ZSH_CUSTOM:-${ZSH:-~/.oh-my-zsh} /custom} /plugins/zsh-completions git clone https://github.com/zdharma-continuum/fast-syntax-highlighting.git ${ZSH_CUSTOM:-$HOME /.oh-my-zsh/custom} /plugins/fast-syntax-highlighting
.zshrc
配置,不得不说,alias 是真的好用:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 export ZSH="$HOME /.oh-my-zsh" ZSH_THEME="robbyrussell" plugins=( git zsh-completions zsh-autosuggestions fast-syntax-highlighting ) DISABLE_MAGIC_FUNCTIONS=true zstyle ':omz:update' mode disabledsource $ZSH /oh-my-zsh.shexport PATH="/usr/local/bin:/usr/local/sbin:/opt/homebrew/bin:/opt/homebrew/sbin:$PATH " eval "$(starship init zsh) " export HOMEBREW_NO_AUTO_UPDATE=1export ZSH="$HOME /.oh-my-zsh" alias ,ms="%PATH/TO/MY/SCRIPT%" alias ,ip="ipconfig getifaddr en0" alias ,sshconfig="vim ~/.ssh/config" alias ,gitconfig="vim ~/.gitconfig" alias c='code .' alias ..='cd ../' alias ...='cd ../../' alias ..l.='cd ../../ && ll' alias ....='cd ../../../' alias ~="cd ~" alias ll='ls -alhG' alias ls ='ls -G'
关掉 URL 特殊符号转义,取消下面内容的注释:
1 DISABLE_MAGIC_FUNCTIONS=true
禁用 zsh 自动更新
新版本的 zsh 禁用自动更新的方式稍微有点变化,取消下面内容的注释即可:
1 zstyle ':omz:update' mode disabled
starship rust 写的一个终端的 prompt 工具.
1 2 brew install starship echo 'eval "$(starship init zsh)"' >> ~/.zshrc
访达显示所有隐藏文件 快捷键:command + shift + .
永久设置:
1 defaults write com.apple.finder AppleShowShowAllFiles -boolean true ;killall Finder
访达显示绝对路径 快捷键:option + command + P
设置在标题栏显示完整路径:
1 2 3 4 defaults write com.apple.finder _FXShowPosixPathInTitle -bool YES;killall Finder defaults delete com.apple.finder _FXShowPosixPathInTitle;killall Finder
访达预览插件 收集了很多插件的 github 项目地址:https://github.com/sindresorhus/quick-look-plugins
安装:
1 brew install highlight qlcolorcode qlimagesize qlstephen qlmarkdown quicklook-json webpquicklook qlvideo
highlight & qlcolorcode
:预览语法高亮
qlcolorcode
:代码文件预览时高亮
qlimagesize
:预览图片显示图片大小
qlstephen
:以纯文本的形式预览无拓展名或者未知拓展名的文件
qlmarkdown
:预览渲染后的 markdown 文件
quicklook-json
: 预览格式化后的 json 文件
webpquicklook
:预览 webp 图片
qlvideo
:预览 .mkv
等非原生支持的视频格式文件
betterzipql
:预览 zip
压缩包的内容和目录
编程相关 git 安装:
配置:
1 2 git config --global user.name "C1everF0x" git config --global user.email "Oui0jr@163.com"
代理:
1 2 git config --global http.proxy 'socks5://127.0.0.1:7890' git config --global https.proxy 'socks5://127.0.0.1:7890'
pycharm 还没开始配置,要配 anaconda
clion 还没开始配置
vscode 安装了 picgo、ssh 等小插件,一般用来当文本编辑器看代码或者连服务器写博客,不运行代码。
Microsoft Remote Desktop Beta 微软官方的远程连接 win 的管理软件,用来连接老电脑。
Obsidian 写文档、学习笔记等,配置了 iCloud 多端同步,直接把库创在 iCloud 云盘里面就可以了。
其他相关 微软三件套 + todo 不想用 wps。
腾讯文档 多端同步,免费,用来写考研的月、日计划和其他的表格安排。
钉钉、腾讯会议 开晚点名或者开会用。
QQ、微信、telegram 略。
力扣 每日一题。
不背单词 坚持背单词,百利无一害。
OBS 录屏。
百度、阿里网盘 总会用到。
网易云、QQ音乐 一个日常听,一个用来听周董陈奕迅。
Guitar Pro8 看吉他谱。
Logic Options+、GHUB Master3s 和 G502 无线要用。
Picgo 负责上传图片到图床,可以联动 Typora 和 vscode,使用 Vue 主题。
官网
github上的release
踩坑:安装后打不开,显示文件损坏。
原因: PicGo 没有签名,所以会被 macOS 的安全检查拦下。
解决:信任开发者,会要求输入密码:
1 sudo spctl --master-disable
然后放行 PicGo :
1 xattr -cr /Applications/PicGo.app
然后就能正常打开。
配置是用腾讯云COS搞个存储桶当图床,每个月一两块。
配置文档
超级右键 扩展鼠标右键的菜单功能,比较实用,去 App Store 下的免费版。
效果:
Speed Player 浏览器插件,可以突破某种限制倍速播放视频,百度云看网课的时候用处很大。
Keka 压缩和解压用,类似于 Bandzip。
Mos 优化鼠标和改鼠标滑轮滚动方向(mac 鼠标滑轮滚动方向是反的,往上滚是往下走)
Monitor Control 改显示器亮度,非苹果官方认证的第三方显示器无法直接在控制中心调亮度。
TemperMonkey 油🐒。
Downie 很牛的一个视频下载器,什么网站的视频都能给链接就下。
ChatGPT客户端 github 上看到的一个项目,很有意思,down 下来用着还蛮方便的。
项目地址:https://github.com/lencx/ChatGPT
安装:
1 2 brew tap lencx/chatgpt https://github.com/lencx/ChatGPT.git brew install --cask chatgpt --no-quarantine
安全相关 pwn 环境 采用 UTM 模拟 x86 虚拟机来搭建 pwn 环境,属于是曲线救国了。参考教程:视频教程 和 博客教程
实际体验下来就是,目前任何一种在 arm 架构上搭 x86 虚拟机的方案(qemu、utm、docker),搞出来的虚拟机性能都有很大损失。UTM 在安装虚拟机的时候,非常非常非常慢,非常非常非常卡,把桌面移除掉以后命令行才流畅很多。
最后还是没有采用这个方案,应该是我的问题比较大,UTM 有三种网络模式,我的这台用模拟 VLAN 可以上网,但是宿主机没办法 ssh 连,用共享网络和桥接都没办法上网,但是可以宿主机 ssh 连,应该是校园网的网络问题,之后网络环境变化了可以再看看。
这个方案是可行的,但是现阶段还是不好用。
最后的方案是用学生机搭 pwn 环境,宿主机 ssh 连上去打。
init_pwn.sh:
这个是抄 wjh 师傅的,链接:https://blog.wjhwjhn.com/archives/840/,稍微有点改动,在 setuptools 处。后面的 git clone 需要提前配一下代理,不然脚本容易断。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 # !/bin/bash set -e cd ~ sudo apt-get -y update sudo apt-get -y install tzdata sudo apt-get -y install vim sudo apt-get -y install libxml2-dev sudo apt-get -y install libxslt-dev sudo apt-get -y install libmysqlclient-dev sudo apt-get -y install libsqlite3-dev sudo apt-get -y install zlib1g-dev sudo apt-get -y install python2-dev sudo apt-get -y install libffi-dev sudo apt-get -y install libssl-dev sudo apt-get -y install wget sudo apt-get -y install curl sudo apt-get -y install gcc sudo apt-get -y install clang sudo apt-get -y install make sudo apt-get -y install zip sudo apt-get -y install build-essential sudo apt-get -y install libncursesw5-dev libgdbm-dev libc6-dev sudo apt-get -y install tk-dev sudo apt-get -y install openssl sudo apt-get -y install virtualenv sudo apt-get -y install git sudo apt-get -y install proxychains4 # setuptools 36.6.1 -> python2 wget https://files.pythonhosted.org/packages/a4/c8/9a7a47f683d54d83f648d37c3e180317f80dc126a304c45dc6663246233a/setuptools-36.5.0.zip unzip setuptools-36.5.0.zip cd setuptools-36.5.0 sudo python2 setup.py install cd ../ sudo rm -rf setuptools-36.5.0 setuptools-36.5.0.zip # setuptools 65.4.1 -> python3 sudo apt-get install python3-setuptools # pip wget https://mirrors.aliyun.com/pypi/packages/53/7f/55721ad0501a9076dbc354cc8c63ffc2d6f1ef360f49ad0fbcce19d68538/pip-20.3.4.tar.gz tar -zxvf pip-20.3.4.tar.gz cd pip-20.3.4 sudo python2 setup.py install sudo python3 setup.py install cd ../ sudo rm -rf pip-20.3.4 pip-20.3.4.tar.gz sudo pip2 config set global.index-url https://mirrors.aliyun.com/pypi/simple sudo pip3 config set global.index-url https://mirrors.aliyun.com/pypi/simple sudo python2 -m pip install --upgrade pip sudo python3 -m pip install --upgrade pip sudo pip2 install pathlib2 # pwntools 4.7.0 sudo pip2 install pwntools==4.7.0 sudo pip3 install pwntools==4.7.0 # pwndbg git clone https://github.com/pwndbg/pwndbg.git cd pwndbg ./setup.sh cd ../ # Pwngdb git clone https://github.com/scwuaptx/Pwngdb.git cp ~/Pwngdb/.gdbinit ~/ sed -i 'N;2 i source ~/pwndbg/gdbinit.py' ~/.gdbinit sed -i '/peda/d' ~/.gdbinit # one_gadget sudo apt-get -y install ruby-dev sudo gem install one_gadget # seccomp-tools sudo gem install seccomp-tools # patchelf sudo apt-get -y install patchelf # glibc-all-in-one git clone https://github.com/matrix1001/glibc-all-in-one.git # ln python2 -> pythonsudo ln -s /usr/bin/python2 /usr/bin/python # ropper sudo pip3 install capstone filebytes unicorn keystone-engine ropper # qemu-system sudo apt-get -y install qemu-system
docker 的也搭了一套,感觉还行,配合着用。
参考教程:https://blog.csdn.net/qq_25755011/article/details/115541221
配置:m1 mac mini,16g 运存,512g 硬盘,Ventura 13.3
sqlmap sql 注入一把梭。
nmap 扫机子等等。
masscan 扫端口。
binwalk 文件分析,也就打 ctf 拿出来用用,解隐写题.
dirsearch 扫目录的,官网:https://github.com/maurosoria/dirsearch
1 2 3 4 cd /Documents/secgit clone https://github.com/maurosoria/dirsearch.git sudo ln -s /Users/c1everf0x/Documents/sec/dirsearch/dirsearch.py /usr/local/bin/dirsearch
wireshark 流量分析
1 brew install --cask wireshark
010editor 看二进制文件。
参考资料
每一行都是完整的 url 链接
https://www.sqlsec.com/2022/01/monterey.html
https://cn-sec.com/archives/1620371.html
https://wangze.tech/environment/#其他软件
http://mirrors.ustc.edu.cn/help/brew.git.html
https://www.jianshu.com/p/7421f7a03e07
https://ihtcboy.com/2018/09/30/2018-09-30_程序员的macOS系列:Mac开发环境配置/