前言 ubuntu简介 	Ubuntu是一个以桌面应用为主的Linux发行版 操作系统,其名称来自非洲南部祖鲁语或豪萨语的”ubuntu“一词,意思是“人性”“我的存在是因为大家的存在”,是非洲传统的一种价值观。Ubuntu基于Debian发行版 和GNOME桌面环境 ,而从11.04版起,Ubuntu发行版放弃了GNOME桌面环境,改为Unity 。此前人们认为Linux难以安装、难以使用,在Ubuntu出现后这些都成为了历史。Ubuntu也拥有庞大的社区力量,用户可以方便地从社区获得帮助。自Ubuntu 18.04 LTS起,Ubuntu发行版重新开始使用GNOME3桌面环境。
通用必备配置 更换软件源 备份list文件 失败了也可以回溯
1 2 cd  /etc/apt/sudo  cp  sources.list sources.list.bak
更改list文件 1 sudo  vi /etc/apt/sources.list
替换其中内容,更换为阿里源
1 2 3 4 5 6 7 8 9 10 11 12 13 14 deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse 
更新软件列表 1 2 sudo  apt update 或 sudo  apt-get update	sudo  apt upgrade 或 sudo  apt upgrade		
更改root密码 跟随指引操作即可
构建工具安装 安装gcc、g++、make等
1 sudo  apt install build-essential
Git安装 常用于拉取github上的一些工具
1 2 sudo  apt install gitgit --version   
vim安装 常用文本编辑器
1 2 sudo  apt install vimvim -v   
安装glibc-doc GNU C Library (glibc) 的文档
1 sudo  apt install glibc-doc
安装python2及pip2 一些python脚本需要在python2环境下运行
安装python2 1 2 sudo  apt install python2python2 --version  
安装pip2 1 2 3 4 curl https://bootstrap.pypa.io/pip/<你的python2版本,例如2.7>/get-pip.py --output get-pip.py  sudo  python2 get-pip.py pip2 --version  rm  get-pip.py 
安装pip3 常用python版本,一般自带了python3
1 2 sudo  apt install python3-pippip --version 或 pip3 --version  
pip换源(清华源) 1 2 3 mkdir  ~/.pip 或 mkdir  -p ~/.config/pipcd  ~/.pip 或 cd  ~/.config/pipvim pip.conf 
修改pip.conf的内容为
1 2 3 4 5 6 7 8 9 10 11 [global]   index-url =https://pypi.tuna.tsinghua.edu.cn/simple  timeout  = 6000   [install]   trusted-host =pypi.tuna.tsinghua.edu.cn  disable-pip-version-check  = true 
其他源
1 2 3 4 5 6 https://pypi.douban.com/   https://pypi.hustunique.com/   https://pypi.sdutlinux.org/   https://pypi.mirrors.ustc.edu.cn/   https://mirrors.aliyun.com/pypi/simple/   https://pypi.tuna.tsinghua.edu.cn/simple/   
其他软件安装 安装fd 	项目地址cha0ran/fd-zh: fd Chinese document 
	fd 是一个在你文件系统中查找条目的程序。它是一个简单、快速、友好的 find
	在ubuntu19.04及更新版本安装:
1 2 3 4 5 6 apt install fd-find   vim /root/.bashrc source  /root/.bashrc fd -h  
	
安装anaconda 多环境切换工具
查找并安装所需版本 在清华大学开源软件镜像站  中查找符合自己版本的anaconda
这里选择https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2024.06-1-Linux-x86_64.sh这个版本,安装其他版本替换相应链接即可
1 2 3 4 5 6 7 8 wget --user-agent=“Mozilla” + https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2024.06-1-Linux-x86_64.sh   bash Anaconda3-2024.06-1-Linux-x86_64.sh   vim /etc/profile  vim ~/.bashrc	  source  /etc/profilesource  ~/.bashrc  conda -V   rm  Anaconda3-2024.06-1-Linux-x86_64.sh  
换源 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ conda config --set  show_channel_urls yes  conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/ conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/ conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/ conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/ conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/ conda config --set  show_channel_urls yes  conda config --remove-key channels   conda config --show   
conda常用命令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 conda update -n base -c defaults conda   conda create -n <虚拟环境名称> python=<X.X(3.6、3.7等)>   source  activate <虚拟环境名称>  source  deactivate <虚拟环境名称>  conda remove -n <虚拟环境名称> --all   conda list   conda install <包名>   conda install scrapy==1.3  conda install -n <环境名> <包名>  conda env  list 或 conda info -e 或    conda update conda   conda update anaconda   conda update --all   conda update python   
xrdp安装 	微软的远程桌面协议(RDP) 是一个允许从一台计算机到另一台计算机进行图形化远程桌面连接的协议。RDP 的工作原理是让一台主机运行软件,允许其他几台计算机连接到它。
	XRDP是 RDP 的一个开源实现,不需要运行任何专有程序。XRDP 不仅试图遵循 RDP,而且还与常规的 RDP 客户端兼容,如Remmina和GNOME Boxes。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 sudo  apt install xrdpsudo  systemctl set-default multi-user.targetsudo  systemctl set-default graphical.targetsudo  systemctl enable  xrdpsudo  systemctl start xrdpsudo  systemctl stop xrdpsudo  adduser xrdp ssl-certreboot 
	安装远程连接xrdp的客户端(二选一即可)
1 2 sudo  apt install gnome-boxessudo  apt install remmina
Nodejs及npm安装 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 sudo  apt-get remove --purge npmsudo  apt-get remove --purge nodejssudo  apt-get remove --purge nodejs-legacysudo  apt-get autoremoverm  -r /usr/local/bin/npmrm  -r /usr/local/lib/node-moudelsfind / -name npm rm  -r /tmp/npm*sudo  apt-get updatesudo  apt-get install nodejssudo  apt-get install nodejs-legacysudo  apt-get install npmsudo  npm config set  registry https://registry.npmmirror.comsudo  npm config listsudo  npm install -g nsudo  n stablesudo  node -vsudo  npm -v
更换python版本 	有时,系统自带的python版本不符合我们的需要,那么就需要我们自己再重新安装和配置python版本
	以安装python3.10.4为例
安装python3.10 1 2 sudo  apt-get install python3.10
从官网下载自行安装 1 2 3 4 5 6 7 8 9 10 11 12 13 sudo  apt updatesudo  apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-devcd  /homesudo  wget https://www.python.org/ftp/python/3.10.4/Python-3.10.4.tgzsudo  tar -zvxf Python-3.10.4.tgzcd  Python-3.10.4/./configure --enable-optimizations   make sudo  make install  python3.10 --version   
更新python默认指向 修改软链接指向 1 2 3 4 5 6 7 8 9 which  python  sudo  rm  /usr/bin/pythonwhich  python3.10 sudo  ln  -s /usr/local/bin/python3.10 /usr/bin/python
现在使用python命令显示的就是python3.10.4了
设置python的环境变量 编辑.bashrc文件 找到
1 2 3 alias  ll='ls -alF' alias  la='ls -A' alias  l='ls -CF' 
修改为
1 2 3 4 alias  ll='ls -alF' alias  la='ls -A' alias  l='ls -CF' alias  python='/usr/local/bin/python3.10' 
其中新添加内容的引号中部分换成自己的python安装路径
最后按下esc,然后依次输入:wq回车即可
更新pip默认指向 修改软链接指向 1 2 3 4 5 6 7 which  pipsudo  rm  /usr/local/bin/pipsudo  ln  -s /usr/local/bin/pip3.10 /usr/local/bin/pip
现在使用pip命令指向的就是python3.10的pip了
PWN环境配置 gdb-multiarch 1 2 sudo  apt-get install gdb-multiarchgdb-multiarch -v   
主要的攻击武器,本质是一个python库
LibcSearcher 1 2 git clone  https://github.com/lieanu/LibcSearcher.git python ./LibcSearcher/setup.py develop 
pwndbg 动态调试
如果还未安装gdb,请先安装gdb
随后执行
1 2 git clone  https://github.com/pwndbg/pwndbg ./pwndbg/setup.sh 
checksec 检查二进制文件的受保护状态
1 2 3 git clone  https://github.com/slimm609/checksec.sh.git sudo  cp  ./checksec.sh/checksec /usr/local/bin/checksec  rm  checksec.sh  
ROPgadget One_gadget 1 2 3 sudo  apt install rubysudo  apt install gemgem install one_gadget 
main_arena_offset 1 git clone  https://github.com/bash-c/main_arena_offset 
1 2 sudo  apt install gcc ruby-devsudo  gem install seccomp-tools
可能出现的问题及解决方案 使用apt更新或安装软件时,提示“由于没有公钥,无法验证下列签名” 	例如这样的情况
1 2 W: GPG 错误:https://download.docker.com/linux/ubuntu focal InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY 7EA0A9C3F273FCD8 E: 仓库 “https://download.docker.com/linux/ubuntu focal InRelease” 没有数字签名。 
	执行以下命令即可
1 sudo  apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7EA0A9C3F273FCD8
	注意最后的7EA0A9C3F273FCD8需要根据你的报错提示中给出的NO_PUBKEY进行替换
error: externally-management-environment 	在ubuntu24.04及更新版本中,尝试使用pip安装python模块可能会出现以下问题:
	这是由于 PEP 668 造成的更改。从 Ubuntu 23.04 开始,它建议使用特定于 Python  的包管理工具(例如 pip)使用虚拟环境安装包,以避免与操作系统包管理器安装的包发生冲突。不过,用户仍然可以像以前一样强制 pip 安装到解释器的全局上下文中。
方法一:通过添加 --break-system-packages 标志来绕过 	例如安装imagesearch
1 pip install --user imagesearch --break-system-packages 
	如果不想每次都输入**–break-system-packages**,可以将其写入配置文件。
1 2 mkdir -p ~/.config/pip echo -e "[global]\nbreak-system-packages=true" > ~/.config/pip/pip.conf 
方法二:使用 pipx代替pip 	Pipx 是一种替代命令行工具,用于在隔离环境中安装和运行 Python  应用程序。然而,它仅适用于Python 应用 。
1 2 sudo apt install pipx pipx ensurepath