CentOS7中编译PHP及开启JIT

实施过程

1、安装相关依赖
yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel ncurses curl gdbm-devel db4-devel libXpm-devel libX11-devel gd-devel gmp-devel expat-devel xmlrpc-c xmlrpc-c-devel libicu-devel libmcrypt-devel libmemcached-devel

2、下载并解压
建议查看官网release 版本
wget https://www.php.net/distributions/php-8.0.30.tar.gz
tar -zxvf php-8.0.30.tar.gz

3、预编译

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
./configure \
--with-config-file-path=/usr/local/php80/etc \
--with-config-file-scan-dir=/usr/local/php80/etc/php.d \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--with-curl \
--with-freetype-dir=/usr/local/freetype \
--enable-gd \
--enable-gd-jis-conv \
--with-gettext \
--with-iconv=/usr/local/libiconv \
--with-libxml-dir=/usr \
--with-kerberos \
--with-libdir=/usr/lib64 \
--with-mysqli \
--with-openssl \
--with-pcre-regex \
--enable-mysqlnd \
--with-mysqli=mysqlnd \
--enable-pdo \
--with-pdo-mysql \
--with-pdo-sqlite \
--with-pear \
--with-png-dir \
--with-jpeg-dir \
--with-xmlrpc \
--with-xsl \
--with-zlib \
--with-bz2 \
--with-mhash \
--with-password-argon2 \
--with-sodium=/usr/local \
--disable-rpath \
--disable-fileinfo \
--disable-debug \
--enable-intl \
--enable-exif \
--enable-ftp \
--enable-cli \
--enable-bcmath \
--enable-libxml \
--enable-inline-optimization \
--enable-mbregex \
--enable-mbstring \
--enable-opcache \
--enable-pcntl \
--enable-shmop \
--enable-soap \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-xml \
--enable-zip

如果看到以下提示信息,说明 configure 成功。

4、安装
sudo make && make install
到安装目录查看版本
/usr/local/php80/bin/php -v

5、编辑配置
复制 php.ini
cp php.ini-production /usr/local/php80/etc/php.ini
复制 php-fpm
cp /usr/local/php80/etc/php-fpm.conf.default /usr/local/php80/etc/php-fpm.conf
cp /usr/local/php80/etc/php-fpm.d/www.conf.default /usr/local/php80/etc/php-fpm.d/www.conf
修改 php-fpm 配置,在 php-fpm.conf 中开启 pid = run/php-fpm.pid 配置项

6、配置启动 php-fpm
复制 php-fpm 的启动脚本
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
授权执行权限
chmod +x /etc/init.d/php-fpm
启动 php-fpm
/etc/init.d/php-fpm start 或者service php-fpm start

7、开启 openche 和 JIT

1
2
3
4
5
6
7
8
9
10
11
12
13
zend_extension=/usr/local/php80/lib/php/extensions/no-debug-non-zts-20231015/opcache.so

[opcache]
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=192
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000

***

opcache.jit=1205
opcache.jit_buffer_size=64M

记录问题

Q: 编译时候出现错误,configure: error: Please reinstall the iconv library.
没有安装 iconv 库,iconv –version

iconv (GNU libiconv 1.17)
Copyright (C) 2000-2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Bruno Haible.

下载并编译

1
2
3
4
5
6
7
8
9
10
11
wget https://ftp.gnu.org/gnu/libiconv/libiconv-1.17.tar.gz
tar -zxvf libiconv-1.17.tar.gz
cd ./libiconv-1.17
./configure --prefix=/usr/local/libiconv --enable-static --enable-shared
#--prefix 参数表示安装目录,默认为 /usr/local;--enable-static 和 --enable-shared 参数表示编译时同时生成静态和动态库文件。
make
sudo make install
echo "/usr/local/lib" > /etc/ld.so.conf.d/libiconv.conf
echo "/usr/local/libiconv/lib" > /etc/ld.so.conf.d/libiconv.conf
sudo ldconfig -v
sudo ldconfig

若还是出现问题,建议先--without-iconv再后面 make 的时候
make ZEND_EXTRA_LIBS='-liconv'

Q: 编译时候出现错误,configure: error: Package requirements (libsodium >= 1.0.8) were not met:
libsodium 版本低了直接上yum install libsodium libsodium-devel解决
不行的话可以继续手动编译

1
2
3
4
5
6
wget https://github.com/jedisct1/libsodium/releases/download/1.0.18-RELEASE/libsodium-1.0.18.tar.gz
tar -zxvf libsodium-1.0.18.tar.gz
cd libsodium-1.0.18
./configure CC="gcc -m64" --prefix=/usr/local/libsodium --libdir=/usr/lib64
sudo make
sudo make install

Q: 提示 OpenSSL 找不到 / libssl.so.1.1: cannot open shared object file: No such file or directory:
请果断升级 openssl

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
wget https://www.openssl.org/source/openssl-1.1.1w.tar.gz
tar -xvf openssl-1.1.1w.tar.gz
cd openssl-1.1.1w
./config shared --openssldir=/usr/local/openssl --prefix=/usr/local/openssl
make && make install
echo "/usr/local/lib64/" >> /etc/ld.so.conf
ldconfig
openssl version
# 如果不行继续敲入
mv /usr/bin/openssl /usr/bin/openssl.old
mv /usr/lib/openssl /usr/lib/openssl.old
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl /usr/include/openssl
echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
sudo ldconfig -v
sudo ldconfig
openssl version
# OpenSSL 1.1.1w 11 Sep 2023

CentOS7中升级gcc

先情提要

Centos 7 默认 gcc 版本为 4.8,根本满足不了实际需求,使用 yum 也只会更新到维护期 15 年版本

实施过程

1、安装 centos-release-scl
sudo yum install centos-release-scl-rh

2、安装 devtoolset,注意,如果想安装 7.版本的,就改成 devtoolset-7-gcc,以此类推,这里安装 Version 9
sudo yum install devtoolset-9*

3、激活对应的 devtoolset
scl enable devtoolset-9 bash

4、注册 devtoolset
进入/opt/rh 目录,source ./devtoolset-9/enable
记得注册成开机启动(/etc/rc.d/rc.local)
source /opt/rh/devtoolset-9/enable

5、替换旧版 gcc

1
2
3
4
5
6
mv /usr/bin/gcc /usr/bin/gcc-4.8.5
ln -s /opt/rh/devtoolset-9/root/bin/gcc /usr/bin/gcc
mv /usr/bin/g++ /usr/bin/g++-4.8.5
ln -s /opt/rh/devtoolset-9/root/bin/g++ /usr/bin/g++
gcc --version
g++ --version

6、二次确认安装是否就绪
查看当前 gcc
which gcc

/opt/rh/devtoolset-9/root/usr/bin/gcc

在 yum 查看 gcc 资讯
yum info devtoolset-9-gcc-c++

Installed Packages
Name : devtoolset-9-gcc-c++
Arch : x86_64
Version : 9.3.1
Release : 2.2.el7
Size : 31 M
Repo : installed
From repo : centos-sclo-rh
Summary : C++ support for GCC version 9
URL : http://gcc.gnu.org
License : GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
Description : This package adds C++ support to the GNU Compiler Collection
: version 9. It includes support for most of the current C++ specification
and a lot of support for the upcoming C++ specification.

查看 gcc 版本
gcc -v

Thread model: posix
gcc version 9.3.1 20200408 (Red Hat 9.3.1-2) (GCC)

若无误,则升级成功。

倘若服务器被入侵了,要检查哪些地方?

其实可以一句话概括:
检查可疑网络链接,可疑进程,可疑文件,可疑脚本任务
不过对于小白,还是建议重装,重装可以解决 99%问题。

1.查看异常进程活动-查找是否有异常进程和端口占用

1.1 查找占用 cpu 最多的进程

运行 top 命令后,键入大写字母 P 按 cpu 排序

1.2 查找占用内存最多的进程

运行 top 命令后,键入大写字母 M
ps aux | sort -k4nr

1.3 查找进程对应的文件

ls -la /proc/$pid/exe
ls -la /proc/$pid

1.4 跟踪异常进程运行情况

strace -tt -T -e trace=all -p $pid

1.5 查看进程打开的文件

lsof -p $pid

1.6 查看进程端口情况

查看所有端口
netstat -anltp
查看指定进程的端口
netstat -anltp | grep $pid
netstat -apn|more

1.7 清除恶意进程

清除可疑进程的进程链: ps -elf | grep [pid] kill -9 [pid]

2.查看账号安全

2.1 查看是否有存在新增异常账号

查找特权用户
awk -F ":" '$3==0{print $1}' /etc/passwd
查找可以远程登录的账号信息
awk '/\$1|\$6/{print $1}' /etc/shadow
查找 sudo 权限账户
cat /etc/sudoers | grep -v "^#\|^$" | grep "ALL=(ALL)"

2.2 查看是否有账号异常登录情况

查看当前登录用户和其行为
w
查看所有用户最后一次登录的时间
lastlog
查看错误登陆信息
lasstb
查看所有用户的登录注销信息及系统的启动、重启及关机事件
last
查看登录成功的日期、用户名及 ip
grep "Accepted " /var/log/secure* | awk '{print $1,$2,$3,$9,$11}'
查看试图爆破主机的 ip
grep refused /var/log/secure* | awk {'print $9'} | sort | uniq -c |sort -nr | more
grep "Failed password" /var/log/secure* | grep -E -o "(([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3}))" | uniq -c
查看有哪些 ip 在爆破主机的 root 账号
grep "Failed password for root" /var/log/secure | awk '{print $11}' | sort
查看爆破使用的用户名字典
grep "Failed password" /var/log/secure | awk {'print $9'} | sort | uniq -c | sort -nr

3.检查开机启动项

一般通过crontab -l命令即可检测到定时任务后门。不同的 linux 发行版可能查看开机启动项的文件不大相同,Debian 系 linux 系统一般是通过查看/etc/init.d目录有无最近修改和异常的开机启动项。而 Redhat 系的 linux 系统一般是查看/etc/rc.d/init.d或者/etc/systemd/system等目录。
依次排查:

1
2
3
4
5
6
7
8
9
/var/spool/cron/*
/etc/crontab
/etc/cron.d/*
/etc/cron.daily/*
/etc/cron.hourly/*
/etc/cron.monthly/*
/etc/cron.weekly/
/etc/anacrontab
/var/spool/anacron/*

其后键入
cat /etc/rc.local
cat /etc/init.d/rc.local
chkconfig --list
ls -alt /etc/init.d
查看 anacron 异步定时任务 cat/etc/anacrontab
枚举主机所有服务 service--status-all

4.查找异常文件

4.1 查看最近一段时间内被修改的系统文件

查找find /etc/ /usr/bin/ /usr/sbin/ /bin/ /usr/local/bin/ -type f -mtime -T | xargs ls -la

4.2 按时间排序,确认最近是否有命令被替换,可以结合 rpm -Va 命令

ls -alt /usr/bin /usr/sbin /bin /usr/local/bin
rpm -Va>rpm.log

4.3 查看指定目录下文件时间的排序

ls -alt | head -n 10

4.4 使用 find 指令查找限定时间范围的文件

sudo find ./ -cmin -10 -name "*.php"

5.排查恶意 alias

检查 ~/.bashrc~/.bash_profile

6.排查恶意 ssh 公钥

/etc/.ssh/AuthorizedKeys
~/.ssh/AuthorizedKeys

7.系统文件被替换的情况下使用busybox

被替换的系统文件通常为 ld.so.preload
busybox ps -ef|grep watchdogs
busybox ps -ef|grep ksoftirqds

8.借助工具查杀病毒和 rootkit

8.1 查杀 rootkit

chkrootkit
(下载地址:http://www.chkrootkit.org)
rkhunter
(下载地址:http://rkhunter.sourceforge.net)

8.2 查杀病毒

clamav
(下载地址:http://www.clamav.net/download.html)

8.3 查杀 webshell

cloudwalker
(下载地址:http://github.com/chaitin/cloudwalker)

9. 添加命令审计

为历史的命令增加登录的 IP 地址、执行命令时间等信息

9.1 保存 1 万条命令:

sed -i 's/^HISTSIZE=1000/HISTSIZE=10000/g' /etc/profile

9.2 在/etc/profile 的文件尾部添加如下行数配置信息

1
2
3
4
5
6
7
8
9
USER_IP=`who -u am i 2>/dev/null | awk '{print $NF}' | sed -e 's/[()]//g'`
if [ "$USER_IP" = "" ]
then
USER_IP=`hostname`
fi

export HISTTIMEFORMAT="%F %T $USER_IP `whoami` "
shopt -s histappend
export PROMPT_COMMAND="history -a"

写在最后

RootKit Hunter 後端偵測軟體之架設與執行
emergency-response-checklist

关于移动端压测工具

一、APP 自动化测试工具

Appium

官网:http://appium.io/
Github 地址:https://github.com/appium/appium
介绍:
Appium 是一个开源的、跨平台的自动化测试工具。支持自动化 iOS,Android 和 Windows 桌面平台上的原生、移动 Web 和混合应用。 开发者可以使用 WebDriver 兼容的任何语言编写测试脚本,如 Java,OC,JS,PHP,Python,Ruby,C#,Clojure 和 Perl 语言。是做 UI 自动化测试必须要掌握的工具之一。

Airtest

官网:http://airtest.netease.com/
介绍:
Airtest 是网易游戏推出的一个 UI 自动化测试工具,适用于游戏和应用,支持的平台为 Windows,Android 和 iOS。Airtest 提供了跨平台的 API,包括安装应用、模拟输入、断言等。 基于图像识别技术定位 UI 元素,你无需嵌入任何代码即可进行自动化测试。 并且测试脚本运行后可以自动生成详细的 HTML 测试报告。

uiautomator2 (python)

Github 地址:https://github.com/openatx/uiautomator2
介绍:
uiautomator2 是一个可以使用 Python 对 Android 设备进行 UI 自动化的库。其底层基于 Google uiautomator,Google 提供的 uiautomator 库可以获取屏幕上任意一个 APP 的任意一个控件属性,并对其进行任意操作。

二、APP 稳定性测试工具

Monkey

地址:https://developer.android.google.cn/studio/test/monkey
介绍:
Monkey 是一个在模拟器或设备上运行的程序,可生成伪随机用户事件(例如点击、轻触或手势)流以及很多系统级事件。使用 Monkey 以随机且可重复的方式对正在开发的应用进行压力测试。

MonkeyRunner

地址:https://developer.android.google.cn/studio/test/monkeyrunner
介绍:
monkeyrunner 工具提供了一个 API,用于编写可从 Android 代码外部控制 Android 设备或模拟器的程序。使用 monkeyrunner,可以编写一个 Python 程序去安装 Android 应用或测试软件包,运行它,向其发送按键,截取其界面的屏幕截图,并将屏幕截图存储到工作站中。monkeyrunner 工具主要用于在功能/框架级测试应用和设备以及运行单元测试套件,但也可以自由地将其用于其他目的。

Maxim

Github 地址:https://github.com/zhangzhao4444/Maxim
介绍:
Maxim 是基于 monkey 做的二次开发,相较原生 monkey,相对智能。除了保留原生 monkey 已有的功能外,可深度遍历控件,可自定义黑白名单,可设定执行时长,增加防睡眠/防假死机制、防跳出/防误点状态栏及下拉状态栏等。

UICrawler

Github 地址:https://github.com/lgxqf/UICrawler
介绍:
基于 Appium 的 App UI 遍历 & Monkey 工具,支持 Android 和 Ios 移动 App,或 H5 或微信等应用。v2.3 版已支持 Appium 1.16.0, Java-client 7.3.0。

三、APP 性能测试工具

GT

官网:https://gt.qq.com/
介绍:
腾讯开源的 APP 的随身调测平台,支持 ios 和 android。直接运行在手机上,可对 APP 进行快速的性能测试(CPU、内存、流量、电量、帧率/流畅度等等)、开发日志的查看、Crash 日志查看、网络数据包的抓取、APP 内部参数的调试、真机代码耗时统计等。

Perfdog

官网:https://perfdog.qq.com/
介绍:
腾讯游戏部门开发的移动全平台 iOS/Android 性能测试、分析工具平台。手机无需 ROOT/越狱,手机硬件、游戏及应用 APP 也无需做任何修改,极简化即插即用。
PerfDog 支持 iOS 和 Android,支持移动平台所有应用程序(游戏、APP 应用、浏览器、小程序、小游戏、H5、后台系统进程等)、Android 模拟器、云真机等性能测试。PC 上 PerfDog 可多开,单 PC 可同时测试多台手机。目前免费体验,谁用谁香。

SoloPi

Github 地址:https://github.com/alipay/SoloPi
介绍:
SoloPi 是一个无线化、非侵入式的 Android 自动化工具。除了公测版的录制回放、性能测试、一机多控三项主要功能之外,SoloPi 还提供了数据 Mock,性能加压、网络模拟、智能 Monkey 等功能,能为测试开发人员节省宝贵时间。

四、APP 弱网测试&抓包工具

QNET

官网:https://wetest.qq.com/product/qnet
介绍:
QNET 是腾讯 wetest 服务平台推出了一款 App 弱网测试工具,该工具无需 ROOT 手机,无需连接数据线,以独立 app 的方式,为用户提供给快捷、可靠、功能完善的弱网络模拟服务(2G 网络、极差网络、连续丢包、正常网络、4G 网络、100%丢包等)。另外 QNET 还支持 TCP/UDP 网络协议抓包。

Fiddler

官网:https://www.telerik.com/fiddler
介绍:
Fiddler 是一款大家熟知且功能强大的抓包工具。通过设置代理,能够记录客户端与服务器端所有 http(s)通讯。可以针对捕获到的请求进行分析、设置断点、篡改请求及返回数据,还可以设置网络丢包和延时进行弱网络模拟等等。

Charles

官网https://www.charlesproxy.com/
介绍:
Charles 是 HTTP 代理/ HTTP 监视器/反向代理,可以查看其计算机与 Internet 之间的所有 HTTP 和 SSL / HTTPS 通信。可对截取的请求及响应进行分析、支持修改请求参数、支持弱网络模拟。

五、APP 兼容性测试工具

TestIn

官网https://www.testin.cn/
介绍
Testin 是国内较早涉足云测试领域的平台之一。终端种类及数量都比较全面。提供远程真机测试、标准/深度/遍历兼容测试、自动化测试、测试专家驻场等。支持 Android 与 iOS 系统。但目前仅少部分服务为免费,绝大多数服务为收费项目。

腾讯优测

官网:https://utest.21kunpeng.com/home
介绍:
腾讯旗下的云测试服务平台,拥有超过 3000 台真机实验室,覆盖市面 99%主流机型。拥有十年终端测试服务经验,提供兼容性测试、自动化测试、云真机、设备分享等多种服务方式。

百度 MTC

官网:http://mtc.baidu.com/
介绍:
百度 MTC 是百度开放平台旗下的移动云测试中心。提供超过 1500 款热门机型。提供的测试服务种类有兼容性测试、性能测试、功能测试。并且提供了脚本录制工具,类似 Testin。
百度 MTC 的服务目前主要为收费服务。

阿里 MQC

官网:https://www.aliyun.com/product/mqc
介绍:
阿里 MQC 是阿里巴巴旗下的移动测试平台。提供大量热门机型,支持 Android 及 iOS 系统。提供兼容性测试、功能测试、性能测试以及稳定性测试。

六、APP 安全测试工具

OWASP ZAP

官网:https://owasp.org/www-project-zap/
介绍:
OWASP ZAP 是目前最流行的免费 APP 移动安全测试工具,由全球数百个志愿者管理维护。该工具支持多种脚本语言类型,易安装,可以在 APP 的开发和测试阶段自动查找安全漏洞。

Drozer

Github 地址:https://github.com/FSecureLABS/drozer
介绍:
Drozer 是一个由 MWR 安全团队维护开源的软件,该软件是针对 Android 平台的安全审计和攻击框架。安全人员可通过 drozer 自身提供的一些 module 完成一些基础的安全测试功能,同时也可以根据需求实现自己的 module,甚至可以在利用 drozer 提供的框架实现一些自动化审计功能。

MobSF

Github 地址:https://github.com/MobSF/Mobile-Security-Framework-MobSF
介绍:
MobSF 是一款自动化移动 App 安全测试工具,适用于 iOS 和 Android,可熟练执行动态、静态分析和 Web API 测试。可用于对 Android 和 iOS 应用进行快速安全分析。

QARK

Github 地址:https://github.com/linkedin/qark
介绍:
QARK 是一个静态代码分析工具,旨在识别基于 Java 的 Android 应用程序的潜在安全漏洞和关注点。QARK 还试图提供动态生成的 ADB(Android 调试桥)命令,以帮助验证其检测到的潜在漏洞。它甚至可以动态地创建一个定制的测试应用程序,以即用 APK 的形式,确定潜在问题。

WRK

Github 地址:https://github.com/wg/wrk/tree/master
介绍:
wrk 是一个测试并发的工具,类似 adb(ab -c 100 -n 100 http://192.168.2.56:19015/index.html)原理(wrk -t12 -c400 -d30s http://192.168.2.56:19015/index.html)

利用Socat实现单端口转发中继

前言:

oracle cloud 提供的云 mysql 通过外网链接是需要填写指定 CIDR 范围的白名单 IP,然而这个白名单 IP 不支持 0.0.0.0/24 全域,因此提供几个中继思路进行解决。

解决

Socat

假设需求是:PC1(192.168.1.215) 需要使用 PC1 3306 端口直接跳到 PC2 的 MySQL(192.168.1.91)
开始安装
Centos 系统:yum install -y socat
Debian/Ubuntu 系统:apt-get update apt-get install -y socat
成功后即可可以使用
socat -d -d -lh -v -lf /home/mysql.log tcp-l:3306,fork,reuseaddr tcp:192.168.1.91:3306
参数解析

-lh 将主机名添加到日志消息
-v 详细数据流量,文本
-x 详细数据流量,十六进制
-d 增加详细程度(最多使用 4 次;建议使用 2 次)
-lf 记录到文件

但是该命令键入后有个问题,那便是不能持久化运行,初步考虑在命令前添加 nohup 或注册 systemctl
以 debian11 为例,在目录/etc/systemd/system/下创建一个新的 service

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[Unit]
Description=socat mysqli to tcp
Documentation=https://blog.catooilg.com
After=network-online.target
Wants=network-online.target systemd-networkd-wait-online.service

[Service]
Restart=always

; User and group the process will run as.
User=root
Group=root

ExecStart=/usr/bin/socat -d -d -lh -v -lf /home/mysql.log tcp-l:3306,fork,reuseaddr tcp:192.168.1.91:3306

; Limit the number of file descriptors; see `man systemd.exec` for more limit settings.
LimitNOFILE=1048576
; Unmodified caddy is not expected to use more than that.
LimitNPROC=512

[Install]
WantedBy=multi-user.

重载服务systemctl daemon-reload
启动服务 systemctl start nginx
即可完成注册

iptables

1
2
3
4
5
6
iptables -I INPUT -p tcp -m tcp --dport 转发机监听端口 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 转发机监听端口 -j DNAT --to-destination c2 ip:c2 port
iptables -t nat -A POSTROUTING -j MASQUERADE
iptables -I FORWARD -j ACCEPT
iptables -P FORWARD ACCEPT
sysctl net.ipv4.ip_forward=1

Apache

假设需求是:PC1(192.168.1.215) 需要使用 PC1 IP 直接跳到 mywbg.com

1
2
3
4
5
6
apt-get install apache2
a2enmod rewrite headers proxy proxy_http ssl cache
a2dismod -f deflate
a2ensite default-ssl
a2dissite 000-default
service apache2 reload

配置/etc/apache2/sites-enabled/default-ssl.conf 添加如下内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<Directory "/var/www/html">
Options +Indexes +FollowSymLinks +ExecCGI
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
LogLevel alert rewrite:trace5

# Enable SSL
SSLEngine On
# Enable SSL Proxy
SSLProxyEngine On
# Trust Self-Signed Certificates generated by CobaltStrike
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off

修改/etc/apache2/ports.conf,注释 80 端口监听,然后执行以下命令

1
2
3
4
5
6
git clone https://github.com/threatexpress/cs2modrewrite
cd cs2modrewrite
python3 cs2modrewrite.py -i default.profile -c https://192.168.1.215:8080 -r https://www.baidu.com > /var/www/html/.htaccess
-i 表示所使用的c2配置文件
-c 根据监听器配置设置
-r 表示非法访问重定向url

同时在对机添加以下参数

1
2
3
http-config {
set trust_x_forwarded_for "true";
}

trust_x_forwarded_for 选项决定 Cobalt Strike 是否使用 X-Forwarded-For HTTP 头来确定外部 ip。使用 HTTP 重定向器开启此选项,可以让 CS 显示外部 ip 的时候不再显示为代理服务器的。
如果你需要自定义 apache ssl 证书则需要修改/etc/apache2/sites-enabled/default-ssl.conf

1
2
3
SSLCertificateFile	/etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
#请尽量使用真实的ssl证书

以上配置中如果你需要使用 http 服务来转发你可以不关闭 80 端口
如果需要修改相关规则可以自行修改/var/www/html/.htaccess

Nginx

假设需求是:PC1(192.168.1.215) 需要使用 PC1 IP 直接跳到 mywbg.com
安装
apt-get install nginx nginx-extras
添加新模块
git clone https://github.com/threatexpress/cs2modrewrite
编译
python3 ./cs2nginx.py -i default.profile -c https://192.168.1.215:8080 -r https://www.baidu.com -H mywbg.com >/etc/nginx/nginx.conf
参数解析

-i 表示所使用的 c2 配置文件
-c 根据监听器配置设置
-r 表示非法访问重定向 url
-H 指向代理主机的域名

修改/etc/nginx/nginx.conf

1
2
3
4
5
6
7
8
9
10
11
#将80端口注释关闭http
#listen 80;
#listen [::]:80;

#取消443端口注释开启https
listen 443 ssl;
listen [::]:443 ssl;

#取消ssl证书设置注释配置ssl证书
ssl_certificate /root/server.crt;
ssl_certificate_key /root/server.key;

配置完成后重启 nginx,开始配置 CS
CS 配置 C2 文件的时候在 C2 文件里加入如下选项

1
2
3
http-config {
set trust_x_forwarded_for "true";
}

trust_x_forwarded_for 选项决定 Cobalt Strike 是否使用 X-Forwarded-For HTTP 头来确定外部 ip。使用 HTTP 重定向器开启此选项,可以让 CS 显示外部 ip 的时候不再显示为代理服务器。

引用

利用 Socat 实现单端口 中继(中转/端口转发)加速
socat 链接持久的最佳方法是什么

CentOS7中升级Curl

先情提要

在部署 php7.4 的时候,发现 make 错误,翻看日志提示 curl 版本不支持几个函数,原来是机器部署的 curl 版本过低 curl 7.54.1_2017 (x86_64-pc-linux-gnu)
遂开始着手升级至最新 8.0.30

实施过程

先看看目前curl 版本,是否可以使用
yum update curl
因为部分第三方云已经把内核替换成自家(华为云与火山引擎)不行,则需要自己手工更新
1、首先安装 epel-release
yum -y install epel-release

2、下载并安装 curl 的 rpm 包
wget http://mirror.city-fan.org/ftp/contrib/yum-repo/rhel7/x86_64/city-fan.org-release-3-8.rhel7.noarch.rpm
rpm -ivh city-fan.org-release-2-2.rhel7.noarch.rpm

3、将[city-fan.org]的 enable 值修改为 1
vim /etc/yum.repos.d/city-fan.org.repo

1
2
3
4
5
6
7
[city-fan.org]
name=city-fan.org repository for Red Hat Enterprise Linux (and clones) $releasever ($basearch)
#baseurl=http://mirror.city-fan.org/ftp/contrib/yum-repo/rhel$releasever/$basearch
mirrorlist=http://mirror.city-fan.org/ftp/contrib/yum-repo/mirrorlist-rhel$releasever
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-city-fan.org

4、更新 curl
yum update curl --enablerepo=city-fan.org -y

5、安装完成,检查版本,完成升级
curl -V

6、同时移除 city-fan.org.repo 并删除
cp /etc/yum.repos.d/city-fan.org.repo /etc/yum.repos.d/city-fan_bak.org.repo -a

如果此方法不能正常升级,请确认系统是否安装了多个 curl
which curl
whereis curl
如果无法确认,可以选择编译安装,然后重新系统指向

1
2
3
4
5
6
7
wget https://curl.haxx.se/download/curl-7.76.1.tar.gz
tar -xvf curl-7.76.1.tar.gz
cd ./curl-7.76.1
./buildconf
./configure --with-ssl=/opt/openssl --with-nghttp2=/usr/local --disable-file --without-pic --disable-shared
make
sudo make install

重新指向
echo "export PATH=/usr/local/curl/bin:$PATH" >> /etc/profile
刷新系统变量
source /etc/profile
再次查询 curl 版本
curl --version

curl 7.76.1 (x86_64-unknown-linux-gnu) libcurl/7.76.1 OpenSSL/1.1.1w zlib/1.2.7
Release-Date: 2021-04-14
Protocols: dict file ftp ftps gopher gophers http https imap imaps mqtt pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: alt-svc AsynchDNS HTTPS-proxy IPv6 Largefile libz NTLM NTLM_WB SSL TLS-SRP UnixSocket

这里需要注意的是 curl 的版本号是否和 libcurl 一样,不一样则去浏览
vim /etc/ld.so.conf
资源库是否正确软连接

1
2
include /etc/ld.so.conf.d/*.conf
/usr/local/lib # 正确的curl的资源应该在此软连接到安装目录,64位系统为lib64

更改完毕记得刷新配置文件
sudo ldconfig -v
sudo ldconfig
同时注意有无出现 WARNING

记录问题

Q: curl: symbol lookup error: curl: undefined symbol: curl_mime_free
Q: curl: symbol lookup error: curl: undefined symbol: curl_url_cleanup
Q: curl: symbol lookup error: curl: undefined symbol: curl_url
这类问题是 libcurl 软连接缺失,建议先去确认/usr/local/lib 等地方的 libcurl.so 文件是否链接到正确的地方。

1
2
3
4
5
6
sudo ldconfig -v
# ***
#/usr/local/lib:
# libcurl.so.4 -> libcurl.so.4.4.0
# libpcre.so.1 -> libpcre.so.1.2.10
# 打个比方这里的libcurl就是错误链接了,理应是/usr/local/curl/lib/libcurl.so.4.7.0

记CentOS编译nginx事务

环境须知

Nginx 版本:1.22.1

实施过程

开始编译 Nginx 之前,先参考编译语句

./configure arguments: --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --error-log-path=/usr/local/nginx/logs/error.log  --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module=dynamic --with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_slice_module --with-http_stub_status_module --with-http_perl_module=dynamic --with-mail=dynamic --with-mail_ssl_module --with-pcre --with-pcre-jit --with-stream=dynamic --with-stream_ssl_module --with-google_perftools_module --with-openssl=../openssl-1.0.2k --add-module=../lua-nginx-module-0.10.24 --add-module=../ngx_devel_kit-0.3.1
> lua是一个小巧的脚本语言,利用lua-nginx-module模块可以使用lua处理nginx请求

预先准备好 lua-nginx-module 和 ngx_devel_kit 在上级目录,注意版本号,且无需安装

1
2
wget https://github.com/openresty/lua-nginx-module/archive/v0.10.24.tar.gz
tar zxvf v0.10.24.tar.gz
1
2
wget https://github.com/simplresty/ngx_devel_kit/archive/v0.3.1.tar.gz
tar zxvf v0.3.1.tar.gz

到这里可以真正开始编译,并键入make
倘若你本来就有 Nginx,现在是更新或覆盖安装,注意千万不要make install,不然就覆盖安装现有 nginx 了
正常情况下,会弹出以下错误

./configure: error: unsupported LuaJIT version; ngx_http_lua_module requires LuaJIT 2.x.
原因是缺少LuaJIT环境
1
2
3
wget https://github.com/openresty/luajit2/archive/refs/tags/v2.1-20220915.tar.gz
tar zxvf luajit2-2.1-20220915.tar.gz
sudo make install PREFIX=/usr/local/LuaJITL
然后再修改lua-nginx-module的config文件
1
2
3
# 直接声明这两个变量
LUAJIT_INC=/usr/local/LuaJIT/include/luajit-2.1
LUAJIT_LIB=/usr/local/LuaJIT/lib
然后继续开始make 如无意外成功编译

问题

Q:使用 openresty 时 failed to load the resty.core module

问题是找不到 lualib 库和 resty 模块,默认到/usr/local/lib/ 去找 lualib,然而在编译安装 OpenResty 时 lualib 库默认放到/usr/local/openresty/lualib

如何使用atop监控工具

使用场景

atop 是一款用于监控 Linux 系统资源与进程的工具,能够报告所有进程的活动。其以一定的频率记录系统和进程活动,采集的数据包含 CPU、内存、磁盘、网络的资源使用情况和进程运行情况,并能以日志文件的方式保存在磁盘中。对于每个进程,会显示 CPU 使用率、内存增长、磁盘使用率、优先级、用户名、状态和退出码等。当 ECS 实例出现问题后,您可以获取相应的 atop 日志文件进行分析。

安装过程

sudo yum install atop
安装成功后,进入 atop 配置目录编辑变量
vim /etc/sysconfig/atop
其中
LOGINTERVAL:监控周期,建议将默认的监控周期 600s 修改为 30s。
LOGGENERATIONS:日志保留时间,为避免 atop 长时间运行占用太多磁盘空间,建议将默认的日志保留时间 28 天修改为 7 天。

1
2
3
4
LOGOPTS=""
LOGINTERVAL=30
LOGGENERATIONS=7
LOGPATH=/var/log/atop

键入:wq 保存退出
atop -u
激活 atop 监控
假设需要激活网络监控,则需要 netatop 模块,这里安装 3.1 版本,也是支持 Centos7 的最后一个版本,也相对较稳定。
sudo apt install zlib1g-dev
执行如下命令,继续下载 netatop 安装包。
sudo wget [https://www.atoptool.nl/download/netatop-3.1.tar.gz](https://www.atoptool.nl/download/netatop-3.1.tar.gz) --no-check-certificate
开始解压,并进入目录
tar -zxvf netatop-3.1.tar.gz
编译与安装
sudo make && sudo make install
假设编译失败,出现了[Module]: /lib/modules/3.10.0-693.11.1.el7.x86_64/一般是开发包没有安装就绪,继续安装模块开发包(注意包头和模块库必须和内核相同)
sudo yum install kernel-devel-uname -r``安装过程中,如果在源中找不到需要的模块开发包,请到以下地址下载:
https://www.central.org/dl/linuxdev/centos7/x86_64/
https://mirror.netcologne.de/oracle-linux-repos/ol7_latest/getPackage/
例如,要安装 3.10.0-693.11.1.el7.x86_64,请运行以下命令:rpm -ivh kernel-devel-3.10.0-693.11.1.el7.x86_64.rpm最后别忘记服务启动sudo systemctl start netatop
atop -n

后注

筛选指引

c 按照进程 CPU 使用率进行降序筛选。
m 按照进程内存使用率进行降序筛选。
d 按照进程磁盘使用率进行降序筛选。
a 按照进程资源综合使用率进行降序筛选。
n 按照进程网络使用率进行降序筛选。
t 跳转到下一个监控采集点。
T 跳转到上一个监控采集点。
b 指定时间点,格式为 YYYYMMDDhhmm。

参数说明

ATOP 行 主机名、信息采样日期和时间点。
PRC 行 进程整体运行情况。
  • sys、user:分别代表进程在内核态和用户态的运行时间。
  • #proc:进程总数。
  • #trun:处于 running 状态进程数。
  • #tslpi:处于 sleeping interruptible 状态的进程数。
  • #tslpu:处于 sleeping uninterruptible 状态的进程数。
  • #zombie:僵死进程的数量。
  • #exit:atop 采样周期内退出的进程数。
    |
    | CPU 行 | CPU 整体的使用情况,即多核 CPU 作为一个整体 CPU 资源的使用情况。CPU 行各个字段数字相加结果为 N*100%,其中 N 为 CPU 的核数。
  • sys、user:CPU 在用于处理进程时,进程在内核态及用户态所占 CPU 的时间比例。
  • irq:CPU 用于处理中断的时间比例。
  • idle:CPU 处在完全空闲状态的时间比例。
  • wait:CPU 处在进程等待磁盘 IO 导致 CPU 空闲状态的时间比例。
    |
    | CPL 行 | CPU 负载情况。
  • avg1、avg5 和 avg15:分别代表过去 1 分钟、5 分钟和 15 分钟内运行队列中的平均进程数量。
  • csw:上下文切换次数。
  • intr:中断发生次数。
    |
    | MEM 行 | 内存的使用情况。
  • tot:物理内存总量。
  • free:空闲内存的大小。
  • cache:用于页缓存的内存大小。
  • buff:用于文件缓存的内存大小。
  • slab:系统内核占用的内存大小。
    |
    | SWP 行 | 交换空间的使用情况。
  • tot:交换区总量。
  • free:空闲交换空间大小。
    |
    | PAG 行 | 虚拟内存分页情况。
    swin、swout:分别代表换入和换出内存页数。 |
    | DSK 行 | 磁盘使用情况,每一个磁盘设备对应一列,如果有 vdb 设备,那么将会增加一行 DSK 信息。
  • vda:磁盘设备标识。
  • busy:磁盘处于 busy 状态的时间比例。
  • read、write:分别代表读、写请求数量。
    |
    | NET 行 | 多列 NET 展示了网络状况,包括传输层 TCP 和 UDP、IP 层以及各活动的网口信息。
  • ****i:各层或活动网口接手包大小。
  • ****o:各层或活动网口发送包大小。
    |

跨境电商笔记

选品

七分选品,两分运营,一分运气

查看商品侵权的专利网站

美国:http://patft.uspto.gov/
谷歌:https://www.google.com/?tbm=pts&gws_rd=ssl
欧洲:https://www.epo.org/searching-for-patents.html

灵机一动

与你见识有关,暂列举一些网站

运营

术业有专攻

检查拼写

拼写错误关键词模拟
检查英文文章的语法拼写

有时候买家可能搜索词拼写错误了,这个工具就是模拟拓展联想词

翻译

科学家关键词

关键词拓展工具。可以挖掘到大量难以想象到的一些长尾关键词,还可以继续按照单个词分类查看带这个单词的一些长尾词。

小语种翻译
Google 翻译
DeepL 翻译器

AI 翻译神器

Saladict【插件】
Bob 翻译【插件】

划词翻译,可设置词典,可润色

利润核算

FBA Revenue Calculator

输入 ASIN,提供“货物成本”和“头程运费”,核算的结果不含推广费、退货成本等费用,其它站点改链接后缀,比如英国把 com 改成 co.uk;

建立关键词库

ABA SERVICE

亚马逊品牌分析功能(AMAZON BRAND ANALYTICS SERVICE)能查出关键词“搜索频率排名”,排名越靠前,搜素量越大,亚马逊内部的数据,推荐使用

SIF

查找 ASIN 流量关键词数量(自然关键词、广告关键词),流量关键词的位置和流量占比,数据有延迟

Asinseed

一个月免费查 10 次

Sellics 的 sonar

ASIN 反查或关键词拓展(免费)

Keyword Tool

可拓展 Amazon、Google 等平台关键词,免费版能看到拓展词,看不到搜素量;

kparser

可拓展 Amazon、Google 等平台关键词,免费版能看到拓展词,看不到搜素量;

Scientific Seller

模拟在亚马逊搜索框,根据词根 + a、b、c 等 26 个字母进行拓展(免费)

MerchantWords

比较经典的关键词拓展网站,数据比较准(付费)

Helium10

里面的 MAGNET2 的 ASIN 关键词反查,免费版本一天可查 2 次,H10 功能非常强大,有插件;

KW Index Checker and Amazon Rank Tracker【插件】

通过输入 ASIN 和关键词, 查找该 ASIN 这些关键词的位置,可批量查询(免费);

Search Term 关键词反查

查到竞争对手后台埋的关键词

Merge Words

关键词重新组合工具,输入修饰词和关键词大词,重新组合新的关键词

Amazon suggest keyword tool

关键词长尾词拓展工具

Huge Amazon Search Suggestion Expander

亚马逊搜索栏关键词下载

分析 Best Seller

根据关键词推荐话题的工具

做社交电商找标题

EarData(插件)
Fatkun(插件)

产品数据

图片处理工具

唯一:Photoshop
光影魔术手

对图片进行裁剪、拼接、批量处理等,简单实用

Removebg

在线抠图,一键消除背景,还可以编辑图片背景

Photopea

在线 PS 工具

Bigjpg

AI 智能人工图片无损放大,免费版本能放大 4 倍,付费版可放大 8 倍/16 倍

geekpic

图床,用于表格上传亚马逊图片时生成链接

TinyPNG
Squoosh

图片压缩神器。Wish 审核要求照片清晰,而且在 3M 以内,这个工具就可以帮到你!

Bgsub
removeBG

一键抠图

Lama-Cleaner-lama
CleanupPic

橡皮擦,一键去印

Watermark

一键加水印

图片素材

https://www.58pic.com/
https://www.nipic.com/index.html
https://www.toptal.com/designers/subtlepatterns/
https://www.pexels.com/
https://www.veer.com/
https://freebiesbug.com
https://www.logonews.cn
https://www.materialpalette.com/
http://www.colorlisa.com/
https://findicons.com/
https://lineicons.com/
https://unsplash.com/

视频素材

https://www.videezy.com/
https://www.videvo.net/
https://www.vidsplay.com/
https://vimeo.com/groups/freehd/
https://mixkit.co/

Listing 文案工具

Grammarly for Chrome【插件】

自动检查文案拼写或语法问题(免费)

Facebook 符号

后台五点描述前面用来添加特殊符号

EmojiCopy

文案符号

亚马逊 listing 编写工具

针对 FBM,新手,可以作为埋词粗暴手法的参考,包含语法检索工具

关键词同义词查找工具

产品信息快速浏览

DS Amazon Quick View【插件】
在搜索页快速浏览产品排名等其它信息(免费)
Helium10 【插件】
在搜索页快速浏览产品排名等其它信息(免费)
Billfish
ImageAssistant【插件】

在商品详情页一键采集

竞品价格、排名、review 分析

Keepa【插件】

查看竞品历史数据,从价格、类目排名、review 数量和评分、卖家数量等(付费)

The Camelizer

产品 Review 虚假评分分析

Fakespot【插件】

对产品 review 做一个 A-F 等级评分,A 为优,F 为差(假评多),用做参考(免费)

thereviewindex

Review 分析工具,输入产品链接,可查看链接下评论真实性占比,同时可以根据评论点汇总好评差评

请求评论

JungleScount 插件

里面有个 Rquest Reviews 功能

Feedback Genius

求好评工具

Selling Express

智能催评论的小工具

紫鸟超级浏览器

紫鸟超级浏览器有自带一键索评插件,Google 内核+1

便捷入口

亚马逊被侵权,举报入口

善于维权

全球节假日日历

观全球假期

西柚找词

每天免费查看关键词的自然跟广告位置

物流

选择值得信赖的托付
递四方 4PX
燕文经济舱
Fedex 联邦速递

FBA 发货

Bartender

批量打印箱唛

NowMsg

各国城市邮编查找
需要注意下英国地址邮编的位置
Example: XXX, BH16 333, UK

搜航

物流信息和 FBA 仓位信息查询

Moyuren
老狗工具

亚马逊 FBA 标签添加 Made in China 水印

海关 HS 编码查询

网站:http://www.365area.com/hscode

查物流价格

http://www.yw56.com.cn/

价格仅供参考

场外

比别人更强的赖以自恃武器

防关联

跨境卫士
账号狗
Adguard
易得客

一个浏览器轻松解决亚马逊、eBay、Wish、速卖通、Shopee 等跨境电商平台防关联问题

竞品站外推广分析

Leapca

挖掘 ASIN 的站外链接和 Youtube 网红,很多是亚马逊联盟的推广

SimilarWeb

查询网站的流量结构等信息

Alexa

查询网站流量的工具

5Bitly 网站

生成短链,并进行点击数据追踪

站外智汇

站外查找,查看对手投放站外信息,以及投放站外排名变化情况

免费邮件群发工具

https://mailchimp.com/
https://www.mailgun.com/
https://cn.getresponse.com/

推广投放

凯蒂站外推广

站外促销/红人

https://theinventory.com/
https://slickdeals.net/
https://www.cnet.com/
https://www.bradsdeals.com/
https://www.techbargains.com/
https://www.dealnews.com/
https://bensbargains.com/
https://hip2save.com/
https://www.dealmoon.com/
https://www.1sale.com/
https://dealwiki.com/
https://fabulesslyfrugal.com/
https://www.dealsplus.com/
https://www.lessordinaryliving.com/

补充

更多 idea
ChatGPT
Bard
必应 AI

地表最强 AI

Instant Data Scraper 插件

一个特别强大的网页数据爬虫插件,可爬取产品 review、QA、Best Seller 等信息(免费)

WordCounter

词频统计工具,可对爬取的数据进行分析

Sorftime Save 插件

用来分析类目 Best Seller 的销量、评分、上架时间等情况,一般用于选品(付费)

Google Trends

通过关键词查看产品的 Google 搜索趋势,来判断产品的走势(免费)

二维码生成器
短链接生成器
随机码生成器
Faststone Capture

我还是会选择 QQ 截图,一款 Win 上的一款强大的截图软件。

Everthing

一个能帮你在众多繁杂文件中,一秒找到想要的目标文件的搜索软件。

Keyword Tool

不管你是做什么平台,亚马逊,淘宝,天猫,eBay,Wish,以及独立站,站内站外推广,都离不开关键词, 特别是对于做 SEO 的人来说,更是重中之重。可以说搜索引擎的优化最重要的一个环节是关键词。 目前我们所熟悉的搜索引擎,如百度、Google、雅虎、Bing 等,想要用户在这些搜索引擎中搜索到你的网站,而且有一个比较靠前的搜索排名,那么就必须要做 SEO。
同样的,亚马逊上有 A9 算法,可以理解为亚马逊平台内部的 SEO 优化,想要销量要排名,就要贴近亚马逊的 A9 算法,即要优化你的店铺页面符合亚马逊内部的搜索引擎运算规律。怎么优化?第一步就是要去挖掘这个产品所包含的关键词。 同样,Sonar、adwords 等也可以做关键词分析,大家可以都尝试一下,然后选择一个最适合自己的。

如何查看竞品网站上线时间
如何扒出网站用了哪些插件
网站时光机

找出一些独立站以前的页面

如何找出竞对的品牌做过哪些 FB 广告
如何找到竞对品牌的在所有社交平台的广告

欧盟 N26

前言

谈及数字货币,会往往说起例如 Depay 或者 Nobepay 之类的。但是说实话这类信用卡基本都有一大堆硬伤:

  • 是国区人开的
  • 和 DeFi 交易密切相关
  • 开卡手续费高昂

上面任何一条单独拿出来就足够打消注册的必要,更何况 KYC 认证?在目前这个时间点(最好在疫情的时候就办妥)谨慎觉得对于开发者最好的选择可能确实就是 N26 银行的虚拟卡了。

N26 银行简介

以下由 ChatGPT3.5 书写:

N26 是一家德国数字银行,成立于 2013 年,总部位于柏林。N26 的核心业务是提供移动银行服务,为客户提供个人账户、支票账户和借记卡,支持移动支付和在线交易,并提供免费提现和汇款服务。该银行的应用程序支持多种语言和货币,允许客户在世界各地使用。截至 2021 年,N26 已经拥有超过 1000 万用户。N26 旨在通过数字化银行服务来改变传统银行业,为客户提供更加方便、快捷和安全的金融服务。

  • N26 Standard: 是最基本的产品,它提供了一张免费的 N26 借记卡。该账户的优点是没有月费和 ATM 取款费用,并且支持国际转账和汇款等功能。
  • N26 You: 是高级版本,每月收取 9.9 欧元的月费。它提供更多的保险和额外的特权,例如免费提供 5 次 ATM 取款,以及更多的免费提款机覆盖区域。
  • N26 Metal: 是最高级的版本,每月收取 16.9 欧元的月费。它提供了更高限额的取款和更多的额外特权,例如旅行保险和 24 小时优先客服等。

总体来说,N26 银行的产品注重简单易用、灵活、高效,并且提供了良好的数字化体验,旨在满足年轻用户和数字化客户的需求。

申请前准备

  • 护照
  • 一张美国的手机卡,可以是 Google Voice
  • 关于如何申请 Google Voice 号码:GV 申请全攻略
  • 可以听懂土耳其口音英语的能力和正常英语口语交流能力
  • 尽可能全程保持欧洲或者北美网络环境

申请流程

本章节内容大量参考了 YouhuiMa 先生所写的 N26 银行常见问题 2022 年版,但是由于时间有过去了大半年,有些内容有些许差异。

1. 首先打开 N26 官方网站

网站地址:N26.com。点击右上角的 Login,然后点击 Create a Account。

2. 开始填写基本注册信息

Nationality 这一栏强烈推荐选择德国 Germany。因为德国在认证的时候不需要你的手机开 GPS 定位,只要你会一点英语或者德语,他们的简单问题你都可以完成。申请德国账户通过率高,而且因为 N26 银行总部就在德国,德国的账户服务和各种功能都是最全最新的。

自 2022 年开始,申请者如果使用中国大陆的手机号注册,往往会不成功或者接受不到验证码。而美国和香港的手机号包括虚拟号都可以顺利接受验证码。

3.填写个人信息

所有信息必须真实有效。尤其是姓名一定要和你护照上一致(包括英文名)。

笔者因为疏忽第一次注册的时候填错了姓名,直接导致浪费了一个邮箱和一个手机。因为一旦完成注册,在做完所有的认证之前,是无法登入账号管理页面的,也因为无法通过人工以外的方式删除错误的账号,会导致手机号码直接被废掉。而一个手机只能绑定一个账号,这里一定要小心再小心。

4. 填写申请 N26 银行账户的个人住址信息

如果要申请西班牙或者意大利的 N26 账户,你需要在当地有一个居住地址,方便接受邮寄给你的银行卡。如果你仅申请普通免费账户,N26 是不会给你寄实体卡片的,所有操作都在手机 app 上完成。因此,申请人是否真的有一个所在国家的地址就不那么重要了。在网上找一个看起来像居民住宅的地址填入就可以。比较推荐 Random German Addr

5. 填写申请人的国籍和出生/性别信息

这部分同样一定要和你的护照内容一致,如果你是中国护照或者其他国家护照,请如实填写,因为之后的视频认证需要核对的。

6. 你的工作状态相关问题

简单如实选择就可以,并不是很重要。一般来说有需要的人都填 Employment。老板们自然有合法获取全球各国信用卡的方法。主要会咨询目前雇主是哪个行业的,这个问题不重要,简单选择一个就可以,一般的码农都是 Media, technology & consulting。以及最后会询问以下你申请 N26 的用途,一般都是个人项目开发,如实选择即可。

7. 美国相关的问题

这里回答是否申请人有美国身份或者绿卡,以及询问是否有美国纳税义务。如果没有持有绿卡或者美国国籍,第一个问题选择 NO。同时也没有美国纳税的义务,第二个问题选 NO。

8. 申请人税务地相关的问题

此时会询问申请人在哪个国家纳税,可以选填自己的税务号码 Tax ID,或者 Tax ID 留空也可以。不影响后续申请。

9. 设置账号的密码

密码设定推荐使用比较复杂的,至少 11 位含有数字、字母和特殊字符。如果你有推荐人,可以填写推荐号码。然后点击去下一步

10. 确认所有注册信息

确认一下所有的申请信息是否正确,然后点击同意合同条款。到这里其实网上申请就基本结束了,N26 银行会立刻发 Email 给你,请打开你的邮箱,点击绿色确认按钮进行确认。点击开户后您的账户就完成了。


认证流程

完成申请账号只是 N26 申请过程中比较简单的一环,相对恶心的步骤是认证阶段。不过毕竟是欧盟最大的网络银行,严格一点也是情有可原。我们在完成注册后,首次登陆会提示你选择一些必要信息,以及信用卡套餐。这里我们应该选择没有任何费用的 N26 Standard 方案。之后页面中会出现以下提示,意味着之后的步骤都应该在手机 App 上完成。

在 App store 下载 N26 App 后,登录你的账户,然后需要绑定你的手机,然后选择使用 Germany Resident VISA (只是一个选项,实际并不需要看)验证身份,一直点击继续直到开启视频验证。
验证的时候,你要找一个安静的地方并且网络畅通。目前 Verify Your Identity 稍微有些问题的更新,需要着重讲一下。
在 Verify Your Identity 视频认证的时候,可以选择德语或者英语,工作时间是德国时间早 9 晚 5,认证专家会询问你以下几个问题:

  1. 确认姓名
  2. 确认是否本人申请(回答 Yes)
  3. 确认是否在一个安静的,没有任何其他人的环境(回答 Yes)
  4. 确认是否有任何人告诉你申请 N26 后会有报酬(回答 No)
  5. 确认并拍摄你的照片
  6. 确认并拍摄你用手张开五指从面前上下移动的片段
  7. 确认护照号码及把护照的首页在摄像头前给客服看一看
  8. 确认并拍摄护照上下移动的片段
  9. 确认并拍摄护照被手指部分遮住的片段
  10. 确认并拍摄护照号码区域的详细内容
  11. 确认并拍摄申请人念出护照号码的片段
  12. 再次发送短信到你的手机,通过 App 内进行输入确认

整个过程大约 10 分钟不到,之后便会提交你的认证信息到 N26 审核部门。如果在周末,你可能需要等到工作日后才会收到审核通过的状态信息;如果是工作日,应该会比较快就审核完毕。一旦视频认证成功,N26 银行账户马上就打开使用了,如果申请了实体银行卡,就会在 3 天内收到邮局寄来的银行卡。(如果本人不在欧洲,建议不要申请实体卡)。
即使开户人不在德国,通过 Email 你也会知道你的 N26 银行帐号 IBAN 和 BIC 等关键信息。之后打开你的 App 已经可以操作了。