• nginx-proxy_pass nginx 代理授权验证访问的站点(伪造 User-Agent、Cookie 验证)
    netnr 2018-11-30 326
    server {
        listen 66;
        location / {
                # 允许跨域
                add_header 'Access-Control-Allow-Origin' '*';
                add_header 'Access-Control-Allow-Credentials' 'true';
                add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
                add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';
                
                proxy_set_header X-Real-IP $remote_addr;
  • wget wget 命令爬取整个站点,可设置(伪造)Cookie、User-Agent 授权验证
    netnr 2018-11-30 434
    # 爬取站点
    wget -c -r -npH -k -nv https://zme.ink/
    
    # 参数说明
    -c  # 断点续传
    -r  # 递归下载
    -np  # 递归下载时不搜索上层目录
    -nv  # 显示简要信息
    -nd  # 递归下载时不创建一层一层的目录,把所有文件下载当前文件夹中
    -p  # 下载网页所需要的所有文件(图片,样式,js文件等)
  • bench 测试各种 Linux 发行版的网络(下行)和 IO 测试,性能测试
    netnr 2018-11-10 8
    # 网络和 IO 测试 https://teddysun.com/444.html
    wget -qO- bench.sh | bash
    
    # 性能测试 https://teddysun.com/245.html
    wget --no-check-certificate https://github.com/teddysun/across/raw/master/unixbench.sh && chmod +x unixbench.sh
    ./unixbench.sh
    
    wget -qO- --no-check-certificate https://raw.githubusercontent.com/oooldking/script/master/superbench.sh | bash
  • kms 一键安装KMS服务脚本
    netnr 2018-11-10 13
    #安装
    wget --no-check-certificate https://github.com/teddysun/across/raw/master/kms.sh && chmod +x kms.sh && ./kms.sh
    
    #查看端口
    netstat -nxtlp | grep 1688
    
    #启动
    /etc/init.d/kms start
    #停止
    /etc/init.d/kms stop
  • ssh.sh ssh 连接,密钥登录,ssh-keygen
    netnr 2018-11-10 429
    # 生成密钥(RSA 兼容性强)
    ssh-keygen -t rsa -b 4096 -C "netnr" # 生成密钥
    # Git 客户端 v2.33.1 及以上的版本或者 OpenSSH 是 8.8 及以上 RSA 算法被禁用,添加配置 ~/.ssh/config
    Host *
    HostkeyAlgorithms +ssh-rsa
    PubkeyAcceptedAlgorithms +ssh-rsa
    
    # 生成密钥(ED25519 更小更快更安全,需要 OpenSSH 6.5 以上,推荐),密钥均为 256 位
    ssh-keygen -t ed25519 -C "netnr"
  • bbr 快速开启 Google BBR 的方法,BBR 内核要求为 4.9
    netnr 2018-11-10 435
    # 修改系统变量
    echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
    echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
    
    sysctl -p   # 保存生效
    sysctl net.ipv4.tcp_available_congestion_control    # 查看内核是否已开启 BBR
    lsmod | grep bbr    #查看 BBR 是否启动
    
    #help
    https://www.moerats.com/archives/612/
  • slmgr Windows 软件授权管理 slmgr 命令,KMS 服务激活系统
    netnr 2018-11-05 28
    # 管理员 运行
    
    # 设置服务
    slmgr -skms skms.netnr.eu.org
    
    # 安装秘钥,或者通过操作界面输入秘钥激活也可以的
    slmgr -ipk 输入对应版本的秘钥
    
    # 激活(已安装秘钥)
    slmgr -ato
  • libgdiplus-mkfontscale.sh Linux 安装字体,asp.net core 验证码
    netnr 2018-10-20 9
    # 安装字体
    yum -y install fontconfig
    cd /usr/share/fonts
    
    mkdir cfont # 创建新的字体文件夹
    chmod -R 755 /usr/share/fonts/cfont # 修改 cfont 目录的权限使 root 用户以外的用户也可以使用
    # 拷贝字体到 cfont 文件夹
    yum install mkfontscale 
    mkfontscale && mkfontdir
    fc-cache –fv # 刷新内存中的字体缓存
  • install-vsftpd.sh 安装 FTP
    netnr 2018-10-20 6
    chkconfig –list | grep vsftpd   # 检查是否安装(没任何反应)
    yum install vsftpd  # 安装
    touch /var/log/vsftpd.log   # 创建日志
    chkconfig vsftpd on # 自启动
    
    # 允许 root 登录
    cd /etc/vsftpd && ls
    # 编辑,注释 root,前面添加#
    vi ftpusers
    vi user_list
  • mysqldump.sh mysql 备份还原
    netnr 2018-09-21 332
    mysqldump -u 账号 -p 数据库 > 路径  # 备份格式
    
    # 备份库(表结构及数据) -R 包含存储过程、函数和触发器 --no-tablespaces 不包括表空间
    mysqldump -u root -p netnrdb -e -R --no-tablespaces > /netnr/data/netnrdb.sql
    mysqldump -uroot -p123456 netnrdb -e -R --no-tablespaces > /netnr/data/netnrdb.sql
    
    mysqldump -u root -p -d netnrdb > /netnr/data/netnrdb.sql   # 备份库(表结构)(加 -d 不含数据)
    mysqldump -u root -p netnrdb table1 table2 table3 > netnrdb.sql # 备份库(指定表)
    
    mysqldump -u root -p --databases dbname1, dbname2 > backdb.sql # 备份多个数据库
  • Scaffold-DbContext dotnet ef core 生成实体
    netnr 2018-09-21 317
    # 公共依赖
    Install-Package Microsoft.EntityFrameworkCore.Tools
    
    # MySQL
    Install-Package Pomelo.EntityFrameworkCore.MySql
    Scaffold-DbContext "Server=.;Port=3306;Database=netnr;uid=root;pwd=123" Pomelo.EntityFrameworkCore.MySql -Force -UseDatabaseNames -DataAnnotations -NoPluralize -NoOnConfiguring -Context ContextBase
    
    #SQLServer
    Install-Package Microsoft.EntityFrameworkCore.SqlServer
    Scaffold-DbContext "Server=.;Database=netnr;uid=sa;pwd=123" Microsoft.EntityFrameworkCore.SqlServer
  • install-mysql5.7.sh linux 安装 MySQL5.7
    netnr 2018-09-20 317
    wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
    rpm -ivh mysql57-community-release-el7-9.noarch.rpm
    yum install mysql-server
    
    mysqld --initialize # 初始化
    
    chown mysql:mysql -R /var/lib/mysql # 设置权限
    
    systemctl start mysqld  # 启动
    service mysqld restart  # 重启
  • git-guide.sh git 命令指南
    netnr 2018-09-05 315
    # linux 安装
    yum install git-core
    
    # clone项目
    git clone https://github.com/netnr/np.git
    
    # 强制覆盖本地
    git fetch --all 
    git reset --hard origin/master 
    git pull
  • kill-nohup.sh linux 后台运行、关闭进程
    netnr 2018-09-05 320
    nohup dotnet Web.dll &  # 后台运行 dotnet 站点
    
    # 会生成 nohup.out 日志文件,如果不想输出日志 /dev/null 是一个路径黑洞
    nohup dotnet Web.dll > /dev/null &
    
    echo "" > nohup.out # 清空 nohup.out 日志文件
    tail -f nohup.out   # 监听 nohup.out 日志输出
    
    kill $(lsof -t -i :8080) # 根据端口 8080 关闭进程
    kill $(pidof node) # 根据进程名称 node 关闭进程
  • install-nginx.sh linux 上多种方式安装 nginx,LNMP 安装、YUM 安装
    netnr 2018-09-05 325
    # 安装方式:一键安装
    wget http://soft.vpser.net/lnmp/lnmp1.9.tar.gz && tar -xvf lnmp1.9.tar.gz && cd lnmp1.9 && ./install.sh nginx
    ./upgrade.sh nginx  # 升级
    
    # help
    https://lnmp.org/install.html
    
    
    # 安装方式:CentOS7 yum
    rpm -Uvh https://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
  • install-openssl.sh linux 上安装 OpenSSL
    netnr 2018-09-05 40
    # 环境
    yum -y install gcc gcc-c++ autoconf automake libtool make cmake
    yum -y install zlib zlib-devel openssl openssl-devel pcre-devel
    
    wget https://www.openssl.org/source/openssl-1.1.1.tar.gz    # 安装包下载地址 https://www.openssl.org/source/
    tar -xzf openssl-1.1.1.tar.gz # 解压
    cd openssl-1.1.1 # 进入安装目录
    mkdir /usr/local/openssl # 创建文件夹
    
    # 卸载升级
  • clock.sh 修改 linux 时区为上海
    netnr 2018-09-05 421
    # CentOS
    
    vi /etc/sysconfig/clock # 编辑,写入
    ZONE="Asia/Shanghai"
    
    cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime # 拷贝(输入 y 覆盖)
    date # 查看时间
    
    # 同步时间
    yum -y install ntpdate
  • swap.sh linux 系统增加 swap 交换分区
    netnr 2018-09-05 401
    # 创建一个空的交换文件 4G
    dd if=/dev/zero of=/swapfile bs=1G count=4
    
    chmod 0600 /swapfile # 设置正确的权限
    sudo mkswap /swapfile # 设置为交换分区
    sudo swapon /swapfile # 挂载
    
    swapon --show # 查看
    free -m # 查看
  • sshd-config SSH 连接 linux 长时间不操作就断开连接,修改时长
    netnr 2018-09-05 45
    vi /etc/ssh/sshd_config # 编辑配置文件
    
    ClientAliveInterval 60  # 表示每分钟发送一次,然后客户端响应,这样就保持长连接,默认是 0, 不发送.
    ClientAliveCountMax 3   # 表示服务器发出请求后客户端没有响应的次数达到一定值,就自动断开.
    
    service sshd restart    # 重启 sshd 服务
    
    # help
    https://www.cnblogs.com/adolfmc/p/7248515.html
  • install-shadowsocks.sh install shadowsocks
    netnr 2018-09-05 36
    wget --no-check-certificate -O shadowsocks.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks.sh
    chmod +x shadowsocks.sh
    ./shadowsocks.sh 2>&1 | tee shadowsocks.log
    
    cat /etc/shadowsocks.json       # 查看 config
    systemctl restart shadowsocks   # 重启
    systemctl status shadowsocks    # 状态
    
    # help
    https://github.com/shadowsocks/shadowsocks-windows/releases
  • nginx.conf nginx 配置文件
    netnr 2018-08-28 503
    ####### nginx.conf
    user www www;
    
    worker_processes auto;
    worker_cpu_affinity auto;
    
    error_log /home/wwwlogs/nginx_error.log crit;
    
    pid /usr/local/nginx/logs/nginx.pid;