微软常用运行库合集-历史版本: https://wwa.lanzoui.com/b0b938k0h#9527
密码:9527
想法、琐碎。
微软常用运行库合集-历史版本: https://wwa.lanzoui.com/b0b938k0h#9527
密码:9527
先直接给出命令:
ip -6 addr show eth0 | grep -v deprecated | grep 'inet6 [^f:]' | awk -F' ' '{print $2}' | awk -F'/' '{print $1}' | tail -1
根据经验观察,使用ip -6 addr show ifce获取到的ipv6地址,排在最后面的那个就是最新的那个,也就是valid_lft最长的那一个。
所以这个命令的原理就是:用ip -6 addr获取ipv6地址,然后选择排在最后面那一个。
然后是步骤拆解:
ip -6 addr show eth0,显示网卡(eth0)的全部ipv6地址
grep -v deprecated,去除已经失效(deprecated)的地址
grep 'inet6 [^f:]',显示有ipv6地址的那一行(不包含f开头的内网ipv6地址)
awk -F' ' '{print $2}',根据空格符号分列,打印第二列
awk -F'/' '{print $1}',根据斜杠符号/分列,打印第一列
tail -1,显示最后一行
快速指南:
1、更新软件包。设置默认策略。
4、启动 UFW
sudo ufw enable本教程是在考虑 IPv4 的情况下编写的,但只要您启用它,它就适用于 IPv6。 如果您的 Ubuntu 服务器启用了 IPv6,请确保将 UFW 配置为支持 IPv6,以便除了 IPv4 之外,它还将管理 IPv6 的防火墙规则。 为此,请使用 nano
或您喜欢的编辑器打开 UFW 配置。
sudo nano /etc/default/ufw
然后确保 IPV6
的值为 yes
。 它应该如下所示:
/etc/default/ufw 摘录
IPV6=yes
保存并关闭文件。 现在,当启用 UFW 时,它将被配置为同时编写 IPv4 和 IPv6 防火墙规则。 但是,在启用 UFW 之前,我们需要确保您的防火墙配置为允许您通过 SSH 连接。 让我们从设置默认策略开始。
如果您刚刚开始使用防火墙,首先要定义的规则是您的默认策略。 这些规则控制如何处理不明确匹配任何其他规则的流量。 默认情况下,UFW 设置为拒绝所有传入连接并允许所有传出连接。 这意味着任何试图访问您的服务器的人都无法连接,而服务器内的任何应用程序都可以访问外部世界。
让我们将您的 UFW 规则设置回默认值,这样我们就可以确保您能够按照本教程进行操作。 要设置 UFW 使用的默认值,请使用以下命令:
sudo ufw default deny incoming sudo ufw default allow outgoing
您将收到如下输出:
OutputDefault incoming policy changed to 'deny' (be sure to update your rules accordingly) Default outgoing policy changed to 'allow' (be sure to update your rules accordingly)
这些命令将默认设置为拒绝传入并允许传出连接。 仅这些防火墙默认值可能足以满足个人计算机的需要,但服务器通常需要响应来自外部用户的传入请求。 我们接下来会研究这个。
如果我们现在启用我们的 UFW 防火墙,它将拒绝所有传入的连接。 这意味着如果我们希望我们的服务器响应这些类型的请求,我们将需要创建明确允许合法传入连接(例如 SSH 或 HTTP 连接)的规则。 如果您使用的是云服务器,您可能希望允许传入的 SSH 连接,以便您可以连接和管理您的服务器。
要将您的服务器配置为允许传入的 SSH 连接,您可以使用以下命令:
sudo ufw allow ssh
这将创建防火墙规则,允许端口 22
上的所有连接,这是 SSH 守护程序默认侦听的端口。 UFW 知道端口 allow ssh
的含义,因为它在 /etc/services
文件中列为服务。
但是,我们实际上可以通过指定端口而不是服务名称来编写等效规则。 例如,此命令与上述命令的工作方式相同:
sudo ufw allow 22
如果您将 SSH 守护程序配置为使用不同的端口,则必须指定适当的端口。 例如,如果您的 SSH 服务器正在侦听端口 2222
,您可以使用以下命令来允许该端口上的连接:
sudo ufw allow 2222
现在您的防火墙已配置为允许传入的 SSH 连接,我们可以启用它。
要启用 UFW,请使用以下命令:
sudo ufw enable
您将收到一条警告,指出该命令可能会中断现有的 SSH 连接。 您已经设置了允许 SSH 连接的防火墙规则,因此可以继续。 使用 y
响应提示并点击 ENTER
。
防火墙现在处于活动状态。 运行 sudo ufw status verbose
命令查看设置的规则。 本教程的其余部分将更详细地介绍如何使用 UFW,例如允许或拒绝不同类型的连接。
此时,您应该允许服务器需要响应的所有其他连接。 您应该允许的连接取决于您的特定需求。 幸运的是,您已经知道如何编写允许基于服务名称或端口的连接的规则; 我们已经在端口 22
上为 SSH 执行了此操作。 您也可以这样做:
sudo ufw allow http
或 sudo ufw allow 80
sudo ufw allow https
或 sudo ufw allow 443
除了指定端口或已知服务之外,还有其他几种方法可以允许其他连接。
您可以使用 UFW 指定端口范围。 一些应用程序使用多个端口,而不是单个端口。
例如,要允许使用端口 6000
-6007
的 X11 连接,请使用以下命令:
sudo ufw allow 6000:6007/tcp sudo ufw allow 6000:6007/udp
使用 UFW 指定端口范围时,您必须指定规则应适用的协议(tcp
或 udp
)。 我们之前没有提到这一点,因为不指定协议会自动允许两种协议,这在大多数情况下是可以的。
使用 UFW 时,您还可以指定 IP 地址。 例如,如果要允许来自特定 IP 地址的连接,例如 203.0.113.4
的工作或家庭 IP 地址,则需要指定 from
,然后 IP 地址:
sudo ufw allow from 203.0.113.4
您还可以通过在端口号后添加 to any port
来指定允许 IP 地址连接的特定端口。 例如,如果要允许 203.0.113.4
连接到端口 22
(SSH),请使用以下命令:
sudo ufw allow from 203.0.113.4 to any port 22
如果要允许 IP 地址的子网,可以使用 CIDR 表示法指定网络掩码。 例如,如果要允许从 203.0.113.1
到 203.0.113.254
的所有 IP 地址,可以使用以下命令:
sudo ufw allow from 203.0.113.0/24
同样,您也可以指定允许子网 203.0.113.0/24
连接的目标端口。 同样,我们将使用端口 22
(SSH) 作为示例:
sudo ufw allow from 203.0.113.0/24 to any port 22
如果要创建仅适用于特定网络接口的防火墙规则,可以通过指定“allow in on”后跟网络接口名称来实现。
在继续之前,您可能需要查找网络接口。 为此,请使用以下命令:
ip addr
Output Excerpt2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state . . . 3: enp0s4: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default . . .
突出显示的输出指示网络接口名称。 它们通常被命名为 eth0
、ens1
或 enp3s2
。
因此,如果您的服务器有一个名为 ens3
的公共网络接口,您可以使用以下命令允许 HTTP 流量(端口 80
)到它:
sudo ufw allow in on ens3 to any port 80
这样做将允许您的服务器接收来自公共互联网的 HTTP 请求。
或者,如果您希望您的 MySQL 数据库服务器(端口 3306
)侦听专用网络接口 eth1
上的连接,例如,您可以使用以下命令:
sudo ufw allow in on eth1 to any port 3306
这将允许您专用网络上的其他服务器连接到您的 MySQL 数据库。
如果您尚未更改传入连接的默认策略,则 UFW 配置为拒绝所有传入连接。 通常,这通过要求您创建明确允许特定端口和 IP 地址通过的规则来简化创建安全防火墙策略的过程。
但是,有时您会希望根据源 IP 地址或子网拒绝特定连接,这可能是因为您知道您的服务器正在从那里受到攻击。 此外,如果您想将默认传入策略更改为 allow(不推荐),则需要为您不使用的任何服务或 IP 地址创建 deny 规则想要允许连接。
要编写 deny 规则,可以使用上述命令,将 allow 替换为 deny。
例如,要拒绝 HTTP 连接,您可以使用以下命令:
sudo ufw deny http
或者,如果您想拒绝来自 203.0.113.4
的所有连接,您可以使用以下命令:
sudo ufw deny from 203.0.113.4
现在让我们看看如何删除规则。
知道如何删除防火墙规则与知道如何创建它们一样重要。 有两种不同的方式来指定删除哪些规则:通过规则编号或通过实际规则(类似于在创建规则时指定规则的方式)。 我们将从 按规则编号 删除方法开始,因为它更容易。
如果您使用规则编号来删除防火墙规则,那么您要做的第一件事就是获取防火墙规则列表。 UFW status 命令具有在每个规则旁边显示数字的选项,如下所示:
sudo ufw status numbered
Numbered Output:Status: active To Action From -- ------ ---- [ 1] 22 ALLOW IN 15.15.15.0/24 [ 2] 80 ALLOW IN Anywhere
如果您决定要删除规则 2,即允许端口 80 (HTTP) 连接的规则,您可以在 UFW 删除命令中指定它,如下所示:
sudo ufw delete 2
这将显示一个确认提示,然后删除允许 HTTP 连接的规则 2。 请注意,如果您启用了 IPv6,您还需要删除相应的 IPv6 规则。
规则编号的替代方法是指定要删除的实际规则。 例如,如果你想删除 allow http
规则,你可以这样写:
sudo ufw delete allow http
您还可以通过 allow 80
指定规则,而不是通过服务名称:
sudo ufw delete allow 80
此方法将删除 IPv4 和 IPv6 规则(如果存在)。
您可以随时使用以下命令检查 UFW 的状态:
sudo ufw status verbose
如果 UFW 被禁用(默认情况下),您将看到如下内容:
OutputStatus: inactive
如果 UFW 处于活动状态(如果您按照步骤 3 进行操作,则应该处于活动状态),输出将显示它处于活动状态,并且会列出所有设置的规则。 例如,如果防火墙设置为允许来自任何地方的 SSH(端口 22
)连接,则输出可能如下所示:
OutputStatus: active Logging: on (low) Default: deny (incoming), allow (outgoing), deny (routed) New profiles: skip To Action From -- ------ ---- 22/tcp ALLOW IN Anywhere 22 (v6) ALLOW IN Anywhere (v6)
如果要检查 UFW 如何配置防火墙,请使用 status
命令。
如果您决定不想使用 UFW,可以使用以下命令禁用它:
sudo ufw disable
您使用 UFW 创建的任何规则都将不再有效。 如果您以后需要激活它,您可以随时运行 sudo ufw enable
。
如果您已经配置了 UFW 规则,但您决定要重新开始,您可以使用 reset 命令:
sudo ufw reset
这将禁用 UFW 并删除之前定义的任何规则。 请记住,如果您在任何时候修改默认策略,它们都不会更改为其原始设置。 这应该让您重新开始使用 UFW。
Windows 11 上运行Android软件
Windows 11的新功能中,“Windows Subsystem for Android”(简称WSA),即「Android子系统」,是最受期待的功能之一。它可以让你在Win11 PC上直接安装运行各种安卓手机APP应用与游戏,无需安装第三方模拟器或者虚拟机。
Android子系统的要求
确保Windows 11版本为22000或更高版本。
硬件必须支持并启用BIOS/UEFI虚拟化
确保微软商店版本为22110.1402.6.0或更高版本,并单击“获取更新”按钮升级其版本。
安卓子系统默认会分配4G内存,建议16G内存以上的电脑使用。
一、在Windows 11电脑上启用虚拟化:
选择 “开始”,输入“Windows 功能”,然后从结果列表中选择“打开或关闭 Windows 功能 ”。
在刚刚打开的 “Windows 功能”窗口中,找到“虚拟机平台 ”并将其选中。
选择“确定”。 可能需要重启电脑。
二、应用准备及安装:
应用页面:
https://apps.microsoft.com/detail/9p3395vx91nr?hl=en-us&gl=US
商店地址:
https://www.microsoft.com/store/productId/9P3395VX91NR?ocid=pdpshare
抓包网址:
操作方法:
打开抓包地址,输入商店地址,选择show,点击对钩,这个页面会出现好多广告,关闭所有广告就是如上图那样,在最下面有子系统的安装包,和上面的依赖文件,抓包直接下载
MicrosoftCorporationII.WindowsSubsystemForAndroid_2407.40000.0.0_neutral_~_8wekyb3d8bbwe.BlockMap | 1970-01-01 00:00:00 GMT | 0647e123685e41b9fe4ac1a9b7eae965be86a454 | 1.65 MB |
MicrosoftCorporationII.WindowsSubsystemForAndroid_2407.40000.0.0_neutral_~_8wekyb3d8bbwe.msixbundle |
和
Microsoft.UI.Xaml.2.8_8.2310.30001.0_arm64__8wekyb3d8bbwe.BlockMap | 1970-01-01 00:00:00 GMT | e8bd89fcbfe2ff603ca593ac45454db827689123 | 6.94 KB |
Microsoft.UI.Xaml.2.8_8.2310.30001.0_arm64__8wekyb3d8bbwe.appx | 2024-08-23 15:32:22 GMT | 7dcef4c53399ae09ca0a7988acf0fa7bc00d251c | 4.85 MB |
Microsoft.UI.Xaml.2.8_8.2310.30001.0_arm__8wekyb3d8bbwe.BlockMap | 1970-01-01 00:00:00 GMT | d8bf65026506e9e94dbdf0e7eafaf24d1c086ad6 | 6.81 KB |
Microsoft.UI.Xaml.2.8_8.2310.30001.0_arm__8wekyb3d8bbwe.appx | 2024-08-23 15:32:22 GMT | ee25befd9aabd4ae71818280b01043e38a5f4148 | 4.77 MB |
Microsoft.UI.Xaml.2.8_8.2310.30001.0_x64__8wekyb3d8bbwe.BlockMap | 1970-01-01 00:00:00 GMT | 79f148959c10bf7df3e7ef156ae1271aeb548cdd | 6.98 KB |
Microsoft.UI.Xaml.2.8_8.2310.30001.0_x64__8wekyb3d8bbwe.appx | 2024-08-23 15:31:20 GMT | 4bf7cc0762db6df1088c4d6142f0a93b9b268a91 | 4.88 MB |
Microsoft.UI.Xaml.2.8_8.2310.30001.0_x86__8wekyb3d8bbwe.BlockMap | 1970-01-01 00:00:00 GMT | c0cf7058bee5079658112aa4ef1ae37adaa6b10c | 6.52 KB |
Microsoft.UI.Xaml.2.8_8.2310.30001.0_x86__8wekyb3d8bbwe.appx |
根据电脑体系下载对应版本。(如日后更新,你下载到的文件命名/版本号可能会不同)
默认双击msixbundle应用包会自动安装。
如果msixbundle包无法直接使用App Installer安装,需要我们在powershell里面手动执行命令进行安装安装完成后,可以在Windows开始菜单中找到适用于Android™的Windows子系统「Windows Subsystem for Android」的应用图标。
在 Android 的 Windows 子系统上进行文件共享,将安装包传入共享文件夹进行安装。
1. 打开适用于 Android 应用程序的 Windows 子系统。
2.转到设置并找到文件夹共享选项
3. 切换开关以启用文件夹共享。 启用后,您的 Windows 用户配置文件文件夹(例如,“C:\Users\User”)将在子系统中共享为“/sdcard/Windows”。
4.重启使文件共享生效。