配置

令人头大的配置记录,持续更新

debian java cobaltstrike teamserver运行报错

java not $PATH :root身份运行报错,没有java环境变量

1
2
3
4
5
6
sudo update-alternatives --install /usr/bin/java java /usr/java/jdk1.8.0_202/bin/java 100
sudo update-alternatives --install /usr/bin/javac javac /usr/java/jdk1.8.0_202/bin/javac 100
sudo update-alternatives --install /usr/bin/java_vm java_vm /usr/java/jdk1.8.0_202/bin/java_vm 100
sudo update-alternatives --install /usr/bin/jcontrol jcontrol /usr/java/jdk1.8.0_202/bin/jcontrol 100
sudo update-alternatives --install /usr/bin/jexec jexec /usr/java/jdk1.8.0_202/jre/lib/jexec 100
sudo update-alternatives --install /usr/bin/jexec jexec /usr/java/jdk1.8.0_202/jre/lib/jexec 100 --slave /usr/share/binfmts/jar jexec-binfmt media/mydisk/jdk/jre/lib/javaws

cobaltstrike

[-] keytool is not in $PATH
install the Java Developer Kit

1
2
ln -s /usr/java/jdk1.8.0_202/bin/bin/keytool /usr/bin/
sudo update-alternatives --install /usr/bin/keytool keytool /usr/java/jdk1.8.0_202/bin/keytool 100

参考

1

2

Ubuntu虚拟机

硬盘30G左右

ubuntu安装后卸载不常用的软件

  • 16.04

    1
    sudo apt purge libreoffice-common  unity-webapps-common thunderbird totem rhythmbox empathy brasero simple-scan gnome-mahjongg aisleriot gnome-mines cheese gnome-sudoku transmission-common gnome-orca webbrowser-app landscape-client-ui-install

    libreoffice-common libreoffice(可以换 WPS)
    unity-webapps-common Amazon 链接
    thunderbird 雷鸟邮件客户端
    totem 自带的播放器
    rhythmbox 自带的音乐播放器
    empathy 自带的即时聊天应用
    brasero 自带的光盘刻录器
    simple-scan 扫描仪
    gnome-mahjongg 对对碰游戏
    aisleriot 纸牌游戏
    gnome-mines 扫雷游戏
    cheese webcam 应用
    gnome-sudoku 数独游戏
    transmission-common BT 客户端
    gnome-orca 屏幕阅读
    webbrowser-app Ubuntu 自带的浏览器(有了 chrome 和 Firefox 根本用不到这个)
    landscape-client-ui-install landscape 远程控制软件
    deja-dup 备份
    onboard 屏幕键盘

  • 18.04

    1
    sudo apt remove ubuntu-web-launchers

    删除Amazon的链接
    sudo apt-get remove unity-webapps-common # 旧版

    sudo apt remove ubuntu-web-launchers # 新版

ubuntu换源

https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/

1
2
3
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
##下一步要确定source.list文件的内容,然后在替换
sudo sed -i "s/us.archive.ubuntu.com/mirrors.aliyun.com/g" /etc/apt/sources.list

ubuntu21.04上面方法不可以

1
sudo sed -i -re "s/cn.archive.ubuntu.com|se/mirrors.aliyun.com/g" /etc/apt/sources.list

ubuntu安装docker

1
2
3
4
5
6
7
8
9
sudo apt-get update
#添加稳定版仓库
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install docker-ce
sudo docker run hello-world
sudo usermod -a -G docker $USER
#为了可以不用sudo,要注销重新登陆
1
2
3
4
5
6
7
8
9
二、安装docker-compose
1.下载最新版的docker-compose文件
sudo curl -L https://github.com/docker/compose/releases/download/1.29.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
1
2.添加可执行权限
sudo chmod +x /usr/local/bin/docker-compose
1
3.测试安装结果
docker-compose --version

https://www.jianshu.com/p/49e8f814d6e0

ubuntu更换php版本

查看已经安装的php包

1
dpkg -l | grep php

image-20201120195140654

安装php5.6

ppa:ondrej/php 是一个比较知名的PHP源(目前维护php5.6,php7.0,php7.1,php7.2)

1
2
3
4
5
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php5.6
sudo apt-get install php5.6-mbstring php5.6-mcrypt php5.6-mysql php5.6-xml libapache2-mod-php5.6

sudo update-alternatives --config php命令可以切换php版本

修改apache的php版本

1
2
3
sudo a2dismod php7.0         # unload the current version
sudo a2enmod php5.6 # load the version you need
sudo service apache2 restart

安装php-gd扩展

1
2
sudo apt-get install php7.0-gd
sudo apt-get install php7.0-zip

开启rewrite

1
2
3
4
5
sudo a2enmod rewrite

sudo a2dissite 000-default.conf
sudo a2ensite 000-default.conf
sudo systemctl reload apache2

ubuntu设置代理

  • 临时
1
2
3
4
5
6
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
export no_proxy="127.0.0.1, localhost, *.cnn.com, 192.168.1.10, domain.com:8080"
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
export no_proxy="127.0.0.1, localhost, *.cnn.com, 192.168.1.10, domain.com:8080"
  • 临时取消代理
    1
    2
    3
    unset http_proxy

    unset https_proxy
  • 持久化
1
2
3
4
5
vim ~/.bashrc
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
export no_proxy="127.0.0.1, localhost, *.cnn.com, 192.168.1.10, domain.com:8080"
source ~/.bashrc

mongodb Ubuntu安装及报错

https://www.jb51.net/article/109091.htm

https://blog.csdn.net/zn505119020/article/details/81331808

apt-get install 报错

E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it

在终端中敲入以下两句

1
2
3
sudo rm /var/cache/apt/archives/lock

sudo rm /var/lib/dpkg/lock

lamp

安装多版本php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
#下载php5.6的命令
sudo apt-get install -y php5.6-common php5.6-mbstring php5.6-mcrypt php5.6-mysql php5.6-xml php5.6-gd php5.6-curl php5.6-json php5.6-fpm php5.6-zip php5.6-mcrypt libapache2-mod-php5.6
#下载php7.0的命令
sudo apt-get install -y php7.0-common php7.0-mbstring php7.0-mcrypt php7.0-mysql php7.0-xml php7.0-gd php7.0-curl php7.0-json php7.0-fpm php7.0-zip php7.0-mcrypt libapache2-mod-php7.0
#下载php7.1的命令
sudo apt-get install -y php7.1-common php7.1-mbstring php7.1-mcrypt php7.1-mysql php7.1-xml php7.1-gd php7.1-curl php7.1-json php7.1-fpm php7.1-zip php7.1-mcrypt libapache2-mod-php7.1
# 下载php7.4的命令
sudo apt-get install -y php7.4-common php7.4-mbstring php7.4-mcrypt php7.4-mysql php7.4-xml php7.4-gd php7.4-curl php7.4-json php7.4-fpm php7.4-zip php7.4-mcrypt libapache2-mod-php7.4
# 下载php7.2的命令
sudo apt-get install -y php7.2-common php7.2-mbstring php7.2-mcrypt php7.2-mysql php7.2-xml php7.2-gd php7.2-curl php7.2-json php7.2-fpm php7.2-zip php7.2-mcrypt libapache2-mod-php7.2 php7.2-dev

sudo apt-get install -y php7.4.3-common php7.4.3-mbstring php7.4.3-mcrypt php7.4.3-mysql php7.4.3-xml php7.4.3-gd php7.4.3-curl php7.4.3-json php7.4.3-fpm php7.4.3-zip php7.4.3-mcrypt libapache2-mod-php7.4.3
#切换默认php版本
sudo update-alternatives --config php 修改版本
#PS:切换版本之前或切换之后要把被切换额版本停用
#开启一个php版本
sudo a2enmod php7.1
# 禁用一个php版本
sudo a2dismod php7.1
#重启Apache2
sudo service apache2 restart

卸载php

1
2
3
4
5
6
7
8
一、删除php的相关包及配置
sudo apt-get autoremove php7*
二、删除关联
sudo find /etc -name "*php*" |xargs rm -rf
三、清除dept列表
sudo apt purge `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "`
四、检查是否卸载干净(无返回就是卸载完成)
dpkg -l | grep php7.0

安装php、apache2、 mysql

1
2
3
apt list | grep libapache2-mod-php*
sudo apt-get install php7.2 libapache2-mod-php7.2
sudo apt-get install mysql-server mysql-client

ubuntu 18安装mysql过程未出现设置密码界面,修改默认密码方法

1
sudo cat /etc/mysql/debian.cnf
image-20211018080209019
1
mysql -u debian-sys-maint -p

https://zhuanlan.zhihu.com/p/348317883

输入上图中密码,登录后,修改root密码,

1
2
3
4
5
6
7
8
9
use mysql;                   

update mysql.user set authentication_string=password('root') where user='root' and Host ='localhost';

update user set plugin="mysql_native_password";

flush privileges;

quit;
1
alter user root@localhost identified with caching_sha2_password by "root"; #mysql8
1
2
3
4
5
sudo apt purge mysql-*

sudo rm -rf /etc/mysql/ /var/lib/mysql

sudo apt autoremove

修改/var/www/html目录权限

1
2
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html

安装php扩展

1
2
sudo apt install php7.2-dev (phpize命令不存在)
sudo pecl install xdebug

php.ini文件位置

1
/etc/php/7.2/apache2/php.ini

配置xdebug3

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
[xdebug]
zend_extension=/usr/lib/php/20170718/xdebug.so
xdebug.mode=debug,coverage,develop,trace,
xdebug.client_host=127.0.0.1
xdebug.client_port="9003"
xdebug.overload_var_dump=1
xdebug.trace_format = 1

[Xdebug]
zend_extension=/usr/lib/php/20170718/xdebug.so
xdebug.mode=trace
xdebug.start_with_request=trigger
xdebug.trigger_value=StartProfileForMe
xdebug.trace_output_name = xdebug.trace.%t.%s
xdebug.output_dir = /var/www/tmp
xdebug.trace_format=1

XDEBUG_TRACE=StartProfileForMe

[Xdebug]
zend_extension=/usr/lib/php/20200930/xdebug.so
xdebug.mode=trace
xdebug.start_with_request=trigger
xdebug.trigger_value=StartProfileForMe
xdebug.trace_output_name = xdebug
xdebug.output_dir = /tmp
xdebug.trace_format=1

image-20211029104511689

ubuntu18安装composer

1
2
第一种方法:sudo apt-get install composer
第二种方法:直接使用composer.phar可执行文件

初始化 init

“库” 那一章我们看到了如何手动创建 composer.json 文件。实际上还有一个 init 命令可以更容易的做到这一点。

当您运行该命令,它会以交互方式要求您填写一些信息,同时聪明的使用一些默认值。

1
php composer.phar init
初始化-参数
  • –name: 包的名称。
  • –description: 包的描述。
  • –author: 包的作者。
  • –homepage: 包的主页。
  • –require: 需要依赖的其它包,必须要有一个版本约束。并且应该遵循 foo/bar:1.0.0 这样的格式。
  • –require-dev: 开发版的依赖包,内容格式与 –require 相同。
  • –stability (-s): minimum-stability 字段的值。

安装 install

install 命令从当前目录读取 composer.json 文件,处理了依赖关系,并把其安装到 vendor 目录下。

1
php composer.phar install

如果当前目录下存在 composer.lock 文件,它会从此文件读取依赖版本,而不是根据 composer.json 文件去获取依赖。这确保了该库的每个使用者都能得到相同的依赖版本。

如果没有 composer.lock 文件,composer 将在处理完依赖关系后创建它。

安装-参数
  • –prefer-source: 下载包的方式有两种: sourcedist。对于稳定版本 composer 将默认使用 dist 方式。而 source 表示版本控制源 。如果 --prefer-source 是被启用的,composer 将从 source 安装(如果有的话)。如果想要使用一个 bugfix 到你的项目,这是非常有用的。并且可以直接从本地的版本库直接获取依赖关系。
  • –prefer-dist:--prefer-source 相反,composer 将尽可能的从 dist 获取,这将大幅度的加快在 build servers 上的安装。这也是一个回避 git 问题的途径,如果你不清楚如何正确的设置。
  • –dry-run: 如果你只是想演示而并非实际安装一个包,你可以运行 --dry-run 命令,它将模拟安装并显示将会发生什么。
  • –dev: 安装 require-dev 字段中列出的包(这是一个默认值)。
  • –no-dev: 跳过 require-dev 字段中列出的包。
  • –no-scripts: 跳过 composer.json 文件中定义的脚本。
  • –no-plugins: 关闭 plugins。
  • –no-progress: 移除进度信息,这可以避免一些不处理换行的终端或脚本出现混乱的显示。
  • –optimize-autoloader (-o): 转换 PSR-0/4 autoloading 到 classmap 可以获得更快的加载支持。特别是在生产环境下建议这么做,但由于运行需要一些时间,因此并没有作为默认值。

更新 update

为了获取依赖的最新版本,并且升级 composer.lock 文件,你应该使用 update 命令。

1
php composer.phar update

这将解决项目的所有依赖,并将确切的版本号写入 composer.lock

如果你只是想更新几个包,你可以像这样分别列出它们:

1
php composer.phar update vendor/package vendor/package2

你还可以使用通配符进行批量更新:

1
php composer.phar update vendor/*
更新-参数
  • –prefer-source: 当有可用的包时,从 source 安装。
  • –prefer-dist: 当有可用的包时,从 dist 安装。
  • –dry-run: 模拟命令,并没有做实际的操作。
  • –dev: 安装 require-dev 字段中列出的包(这是一个默认值)。
  • –no-dev: 跳过 require-dev 字段中列出的包。
  • –no-scripts: 跳过 composer.json 文件中定义的脚本。
  • –no-plugins: 关闭 plugins。
  • –no-progress: 移除进度信息,这可以避免一些不处理换行的终端或脚本出现混乱的显示。
  • –optimize-autoloader (-o): 转换 PSR-0/4 autoloading 到 classmap 可以获得更快的加载支持。特别是在生产环境下建议这么做,但由于运行需要一些时间,因此并没有作为默认值。
  • –lock: 仅更新 lock 文件的 hash,取消有关 lock 文件过时的警告。
  • –with-dependencies 同时更新白名单内包的依赖关系,这将进行递归更新。

申明依赖 require

require 命令增加新的依赖包到当前目录的 composer.json 文件中。

1
php composer.phar require

在添加或改变依赖时, 修改后的依赖关系将被安装或者更新。

如果你不希望通过交互来指定依赖包,你可以在这条令中直接指明依赖包。

1
php composer.phar require vendor/package:2.* vendor/package2:dev-master
申明依赖-参数
  • –prefer-source: 当有可用的包时,从 source 安装。
  • –prefer-dist: 当有可用的包时,从 dist 安装。
  • –dev: 安装 require-dev 字段中列出的包。
  • –no-update: 禁用依赖关系的自动更新。
  • –no-progress: 移除进度信息,这可以避免一些不处理换行的终端或脚本出现混乱的显示。
  • –update-with-dependencies 一并更新新装包的依赖。

全局执行 global

global 命令允许你在 COMPOSER_HOME 目录下执行其它命令,像 installrequireupdate

并且如果你将 $COMPOSER_HOME/vendor/bin 加入到了 $PATH 环境变量中,你就可以用它在命令行中安装全局应用,下面是一个例子:

1
php composer.phar global require fabpot/php-cs-fixer:dev-master

现在 php-cs-fixer 就可以在全局范围使用了(假设你已经设置了你的 PATH)。如果稍后你想更新它,你只需要运行 global update

1
php composer.phar global update

ubuntu安装及更新 pip2 pip3

pip2

1
2
sudo apt install python-pip
python2 -m pip install -U pip

pip3

1
2
sudo apt install python3-pip
pip3 install --upgrade pip

pip安装requirements

1
pip3 install -r requirement.txt

ubuntu安装python3.9

1
2
3
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update
sudo apt install python3.9

https://blog.csdn.net/peiwang245/article/details/98317863

pip问题:

https://blog.csdn.net/sudakuang/article/details/101372007?spm=1001.2101.3001.6650.10&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-10.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-10.no_search_link

https://blog.csdn.net/ZZQHELLO2018/article/details/106998144

ubuntu 删除Trash

1
sudo rm -rf ~/.local/share/Trash/*

ubuntu 安装 sshd

1
2
sudo apt install openssh-server
sudo service ssh start

ubuntu 安装 sqlite3

1
2
sudo apt-get install sqlite3
sudo apt-get install libsqlite3-

ubuntu 安装terminator分屏

1
sudo apt-get install terminator
  • 快捷键

Ctrl+Shift+O
Split terminals Horizontally.(上下开新窗口)
Ctrl+Shift+E
Split terminals Vertically.(垂直开新窗口)
Ctrl+Shift+Right
Move parent dragbar Right.(放大当前窗口 向右)
Ctrl+Shift+Left
Move parent dragbar Left.
Ctrl+Shift+Up
Move parent dragbar Up.
Ctrl+Shift+Down
Move parent dragbar Down.
Ctrl+Shift+W
Close the current terminal.
Alt+Up
Move to the terminal above the current one.(切换当前窗口)
Alt+Down
Move to the terminal below the current one.
Alt+Left
Move to the terminal left of the current one.
Alt+Right
Move to the terminal right of the current one.
Ctrl+Shift+S
Hide/Show Scrollbar.(隐藏滚动条)
Ctrl+Shift+F
Search within terminal scrollback
Ctrl+Shift+N or Ctrl+Tab
Move to next terminal within the same tab, use Ctrl+PageDown to move to the next tab. If cycle_term_tab is False, cycle within the same tab will be disabled
Ctrl+Shift+P or Ctrl+Shift+Tab
Move to previous terminal within the same tab, use Ctrl+PageUp to move to the previous tab. If cycle_term_tab is False, cycle within the same tab will be disabled
Ctrl+Shift+C
Copy selected text to clipboard
Ctrl+Shift+V
Paste clipboard text
Ctrl+Shift+Q
Quits Terminator
Ctrl+Shift+X (最大化当前窗口)
Toggle between showing all terminals and only showing the current one (maximise).
Ctrl+Shift+Z
Toggle between showing all terminals and only showing a scaled version of the current one (zoom).
Ctrl+Shift+T
Open new tab
Ctrl+Shift+Alt+T
Open new tab at root level, if using extreme_tabs.
Ctrl+PageDown
Move to next Tab
Ctrl+PageUp
Move to previous Tab
Ctrl+Shift+PageDown
Swap tab position with next Tab
Ctrl+Shift+PageUp
Swap tab position with previous Tab
Ctrl+Shift+F
Open buffer search bar to find substrings in the scrollback buffer. Hit Escape to cancel.
Ctrl+Plus (+)
Increase font size. Note: this may require you to press shift, depending on your keyboard
Ctrl+Minus (-)
Decrease font size. Note: this may require you to press shift, depending on your keyboard
Ctrl+Zero (0)
Restore font size to original setting.
F11
Toggle fullscreen(放大当前窗口)
Ctrl+Shift+R
Reset terminal state
Ctrl+Shift+G
Reset terminal state and clear window