VMware Fusion设置端口转发(macOS)+内网穿透

VMware Fusion设置端口转发(macOS)+内网穿透

原文链接:https://ovea-y.cn/vmware_fusion_set_port_forwarding_macos_internal_network_penetration/

很少有资料提到配置macOS上VMware Fusion的端口转发,因此我在这里进行了一些记录

打开网络设置

Pasted image 20231112151948

解锁并添加新的网络适配器

只有新的网络适配器才允许配置转发,默认的不允许这样做。

Pasted image 20231112152002

设置NAT转发

Pasted image 20231112152014

虚拟机选择使用新创建的虚拟网络适配器

Pasted image 20231112152037

Ubuntu配置静态IP/DNS服务器的方法

首先你可以在安装Ubuntu的时候配置

安装后如果需要修改,请像下面这样修改

vim /etc/netplan/00-installer-config.yaml

改完后重启。

# This is the network config written by 'subiquity'
network:
  ethernets:
    ens160:
      addresses:
      - 192.168.153.101/24
      nameservers:
        addresses:
        - 192.168.153.2
        search: []
      routes:
      - to: default
        via: 192.168.153.2
  version: 2

addresses就是我们创建的Vmware Fusion网络适配器的子网IP,此处就是虚拟机IPV4的地址。

需要注意的是192.168.153.0网段是Vmware Fusion网络适配器自动分配的,只有最后8位可以让我们自己分配网络地址,也就是192.168.153.[自己分配]。

这里24,是设置子网掩码,255.255.255.0(看上一个图)使用了ipv4的24位,所以这里使用24。

其中Vmware Fusion网络适配器自动分配网段,192.168.153.1默认是网关,192.168.153.2是这个网段的路由和DNS服务器。

所以DNA服务器(nameservers)和routes这里填写的是xxx.xxx.xxx.2(其中xxx是创建虚拟网络适配器时自动分配的)

允许Ubuntu远程root登陆和设置root密码

设置root密码

sudo passwd

允许远程登录

vim /etc/ssh/sshd_config

PermitRootLogin yes

PermitRootLogin改成yes即可。

使用密钥鉴权

把你的ssh公钥放入到Ubuntu的.ssh/authorized_keys即可。

echo "[公钥]" >> .ssh/authorized_keys

会保留目标文件原来的数据,在末尾追加

会直接清空整个文件再追加。

创建密钥

ssh-keygen -t [加密类型] -b [密钥长度]

Nginx配置二级域名

apt install nginx

vim /etc/nginx/nginx.conf

user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;

events {
        worker_connections 768;
        # multi_accept on;
}

http {

        ##
        # Basic Settings
        ##

        sendfile on;
        tcp_nopush on;
        types_hash_max_size 2048;
        # server_tokens off;

        # server_names_hash_bucket_size 64;
        # server_name_in_redirect off;

        include /etc/nginx/mime.types;
        default_type application/octet-stream;

        ##
        # SSL Settings
        ##

        ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # Dropping SSLv3, ref: POODLE
        ssl_prefer_server_ciphers on;

        ##
        # Logging Settings
        ##

        access_log /var/log/nginx/access.log;
        error_log /var/log/nginx/error.log;

        ##
        # Gzip Settings
        ##

        gzip on;

        # gzip_vary on;
        # gzip_proxied any;
        # gzip_comp_level 6;
        # gzip_buffers 16 8k;
        # gzip_http_version 1.1;
        # gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;

        ##
        # Virtual Host Configs
        ##

        include /etc/nginx/conf.d/*.conf;
        include /etc/nginx/sites-enabled/*;

        server {
                listen 80;
                server_name [二级域名].[一级域名].cn;
                location / {
                        proxy_pass        http://127.0.0.1:9000;
                }
        }
        
}

[二级域名].[一级域名].cn在云服务提供商的域名配置面板配置就行了。

别忘了也把服务器提供商的防火墙打开需要的端口。

内网穿透

https://ehang-io.github.io/nps/#/

https://github.com/yisier/nps

按照上面的链接做就行,超简单(别忘了打开服务器提供商的防火墙端口!)

Pasted image 20231112152109
Pasted image 20231112152120
Pasted image 20231112152129
Pasted image 20231112152137

开机自动运行

首先写好启动内网穿透服务的脚本

/root/nps/run.sh

/root/nps/npc -server=[ip]:8024 -vkey=[passwd] -type=tcp

使用crontab -e添加

第一次使用会让你选择一个合适的编辑器

@reboot 在crontab的功能是在启动时执行的

@reboot /root/nps/run.sh

然后保存退出,重启看看效果。

原文链接:https://ovea-y.cn/vmware_fusion_set_port_forwarding_macos_internal_network_penetration/

Read more

香港银行开户指南

香港银行开户指南

注意:本文所有内容,都是需要前往香港的情况下才能使用! 本文主要介绍2家实体银行和3家虚拟银行! 实体银行包含: * 中国银行(香港) * 汇丰银行(香港),该银行也被称为“香港上海汇丰银行” 虚拟银行包含: * 众安银行 * 天星银行 * 蚂蚁银行 1、各银行所需资料和办理方式 银行名称 办理方式 所需材料 & 要求 备注 汇丰银行(香港) 提前预约,线下到营业点办理 (如果没预约,只能很早排队取线下号,不一定能取到) 必备证件: 1. 港澳通行证 2. 入境海关小票 3. 身份证 投资证明: 1. 证券App近三月股票交割单 2. 中国结算近三月交割单 3. 银行近三月流水单 4. 支付宝投资流水 资产证明: 1. 银行资产证明 2.

By 夕元
C++协程(Coroutines)

C++协程(Coroutines)

原文链接:https://ovea-y.cn/cpp_coroutine_20/ C++协程(Coroutines) 1. 简单介绍协程 协程可以简单的理解为,它是一个可以随时“中断”,并再次恢复执行的函数。 C++协程框架的特点: * 无栈协程 * 非对称设计(开发者可以自行设计协程调度器,做成对称设计) 2. 协程和函数的区别 函数:函数调用是线性、同步、一次性的执行模式,调用者必须等待被调用方法执行完成后返回。 协程:协程可以异步执行,调用者不需要等待协程完成,可以在协程挂起时继续做其他事情。在执行过程中通过特定的语法(co__yield_和_co__await)暂停执行,并在之后的某个时刻恢复执行。 2.1 普通函数的执行过程 一个普通函数在执行的时候,主要包含两个操作,分别是调用(call)和返回(return)

By 夕元
GitHub Workflows

GitHub Workflows

原文链接:https://ovea-y.cn/github_workflows/ 本文介绍GitHub工作流的创建和作用。 工作流创建方式 在git项目下,创建.github/workflows文件夹,里面编写的任何yml文件都是工作流的一部分。 secrets的创建方式 secrets.GITHUB_TOKEN是GitHub自动创建的,不需要自己创建。 secrets.SERVER_HOST这个的来源,需要在GitHub对应的项目的设置中设置。 readme的构建标签 配置好Branch、Event类型后,把下面这段内容复制到markdown文档里,就会自动显示自动化流程状态了。其实就是一张图片,由GitHub自动生成提供。 一. 自动构建网站并推送到远程服务器 自动构建hugo,并更新远程服务器的静态网站内容。 自动化流程文件 name: Deploy Hugo Site # 当推送到main分支时触发部署流程 on: push: branches: - main

By 夕元
代码版本管理工具(git/gerrit/repo)

代码版本管理工具(git/gerrit/repo)

原文链接:https://ovea-y.cn/code_version_control_tools__git_gerrit_repo/ 一、版本控制工具的历史 1.1 版本控制雏形 在版本控制软件出现之前,就具备diff与patch工具来对源码进行比较和打补丁了,在CVS出来的一段时间里,Linus一直在使用diff与patch工具管理着Linux的代码。diff与patch也是源码版本控制中最基本的概念。 1.1.1 diff —— 用于比较两个文件或目录之间的差异 -u 表示使用 unified 格式 -r 表示比较目录 -N 表示将不存在的文件当作空文件处理,这样新添加的文件也会出现在patch文件中 diff -urN a.c b.c > c.patch 1.1.2 patch —— 用于应用差异修改 通过patch可以将原始文件变成目标文件,

By 夕元