实验四十三Windows Server 2012 RDS桌面虚拟化之十四RemoteApp应用程序的安全管理和会话限制

【Windows Server 2019】发布服务器 | 远程桌面服务的安装与配置 Ⅱ——配置RemoteAPP和访问 博文介绍了如何设置要发布的RemoteApp,以及如何通过跳板机进行RemoteApp访问。 阅读详情

实验四十三Windows Server 2012 RDS桌面虚拟化之十四RemoteApp应用程序的安全管理和会话限制

 

在Windows Server 2012 RDS桌面虚拟化RemoteApp程序中只要有权限可以访Remoteapp程序的用户或用户组,都可以远程登录到RemoteApp会话主机,显然这是不安全的。

  设置Remoteapp程序的会话时间,使会话主机服务器去释放那些断开的会话连接,归还系统资源提升服务器性能

 

说明:

环境基于实验四十二

 

1在Clt-8客户端可以发现当用户有权限可以访问Remoteapp应用程序时,也表明用户可以远程登录远程桌面会话主机(这里是RemoteApp服务器),显然这是不安全的所以要限制用户不能登录服务器但可以使用Remoteapp程序,而且这个限制只对普通用户生效,管理员不受限制。这里要在域中进行组策略设置,登陆DC服务器编辑上节实验中的Remoteapp组策略配置用户设置,更新组策略,然后登陆Clt-8客户端测试,现在用户只能使用Remoteapp程序,但不能远程登陆服务器了(服务器进程太多,资源没有释放很慢)

 

2登录RemoteApp服务器设置Remoteapp程序的会话时间,使会话主机服务器去释放那些断开的会话连接,归还系统资源提升服务器性能

A.         结束断开连接的会话:设置多长时间去注销已经断开连接的会话,释放系统资源

B.         活动会话限制:每一次持续活动的会话连接的时间最长多久,超出时间就断开

C.          空闲会话限制:当用连接了会话,但是会话处于闲置状态即非活动时,多长时间断开会话

D.         达到会话限制或会话连接断开时,处理的方法,是选择断开会话或重新连接

 

安装过程视频分享 http://pan.baidu.com/share/link?shareid=653444&uk=1025659618
绕过软件时间限制工具:RunAsDate的使用与原理 RunAsDate 是一款允许用户在 Windows 系统中修改日期和时间的小型应用程序,而无需更改系统实际的硬件时钟设置。它对于测试那些依赖于系统日期的软件功能非常有用,比如日期限制的激活验证、试用期限限制的绕过等。通过简单操作,用户可以在不影响系统其他应用程序正常运行的情况下,改变特定软件所感知的日期和时间。以下是该工具的部分核心功能:日期和时间的即时修改:用户可以设置特定的未来或过去的日期和时间,影响运行中的程序对当前日期和时间的识别。不会影响其他软件或系统设置。 阅读详情

相关推荐

发那科FOCAS 1/2文档——核心库文件

在开始开发前,明确目标 CNC 的具体型号、连接方式(HSSB/TCP/IP)、软件版本和配置(如轴数、程序号位数),并据此正确配置开发环境和编译选项。开发时需要包含相应的头文件。这是开发跨平台应用时需要特别注意的地方。这是开发应用时必须了解的核心文件。

snailiot的博客 1021

实验四十三Windows Server 2012 RDS桌面虚拟化之十四RemoteApp应用程序的安全管理和会话限制...

实验四十三Windows Server 2012 RDS桌面虚拟化之十四RemoteApp应用程序的安全管理和会话限制 在Windows Server 2012 RDS桌面虚拟化RemoteApp程序中只要有权限可以访Remoteapp程序的用户或用户组,都可以远程登录到RemoteApp会话主机,显然这是不安全的。 设置Remoteapp程序的会话时间,使会话主机服务器去释放那些断开的会...

系统运维 696

从选型到调试:MCU外部晶振电路设计的实战避坑指南

本文详细解析了MCU外部晶振电路设计的关键要点,从选型到调试提供全面指南。重点探讨了晶振频率选择、负载电容计算、PCB布局优化等核心问题,并分享常见故障排查技巧与EMC设计经验,帮助工程师规避设计陷阱,提升嵌入式系统时钟稳定性。

weixin_30872577的博客 280

Windows Server 2012正式版RDS系列①

尊敬的各位同志们,Windows Server 2012的正式版已经发布了,当然也意味着我将给大家正式分享远程桌面服务的相关技术内容了~带着大家看看新的服务器系统在RDS上的变化和改进,同时希望大家多多支持我,欢迎大家提问,在我能力范围内积极给大家解答相关的各种疑问。 Windows Server 2012从底层的Hyper-V开始就已经做了很大的增强,现在是3.0的版本了。并支持许多新的功能,

Martin Liu's Blog--Focus on Oracle 2017

利用mininet模拟SDN架构并进行DDoS攻击与防御模拟(Ryu+mininet+sflow+postman)

1、知识概述 (1)软件定义网络: (2)mininet: Mininet是一个强大的网络仿真平台,通过这个平台,我们可以很方便的模拟真实环境中的网络操作与架构。特别是SDN,在真实网络中进行相关的网络实验有一定难度,自然需要一个仿真平台可以学习这种新型的网络架构,而Mininet就应运而生,承担了这个光荣而艰巨的使命。Mininet自带交换机(switchs)、主机(hosts)、控制器(controllers),同时,在mininet上可以安装OpenvSwitch、多种控制器(NOX\POX

北风 1万+

Claude Code教程(二) | Claude Code 核心信息与使用指南

Claude Code 核心信息与使用指南

qq_20236937的博客 2186

Windows 远程桌面 RDP 会话超时设置

Windows 远程桌面(RDP)可能由于会话超时而导致重新要求登录。可以通过修改注册表或组策略来延长远程桌面的会话超时时间。

TechExplorer365的博客 3379

记录——影刀RPA高级操作题(二)——使用影刀RPA内置包和”Xpath“获取数据,获取数据写入目标MySQL

【代码】记录——影刀RPA高级操作题(二)——使用影刀RPA内置包和”Xpath“获取数据,获取数据写入目标MySQL。

m0_74824002的博客 844

WindowsServer保持会话,让前台程序永久执行

临时记录 WindowsServer保持会话,让前台程序永久执行 计算机配置–管理模板–Windows组件–远程桌面服务–远程桌面会话主机–会话时间限制 设置已中断会话的时间限制 已启用 否 设置活动但空闲的远程桌面服务会话的时间限制 已启用 否 设置活动的远程桌面服务会话的时间限制 已启用 否 达到时间限制时终止会话 已禁用 否 设置 RemoteApp...

WinJay 1795

Unity零基础到进阶 | Unity中的内存泄漏全解析,原因、排查及避免

Unity 内存泄漏并非传统C++语境中的野指针或未释放堆内存,而是基于其「托管内存(C#)+ 原生内存(引擎/非托管)」双架构的特殊问题——即已废弃、不再被业务逻辑使用的内存块,无法被引擎或系统自动回收,持续占用内存空间,最终引发内存暴涨、GC卡顿、OOM(内存溢出)崩溃,其中移动端、主机端受影响最显著。 Unity 内存主要分为三类,其中泄漏仅发生在前两类,栈内存因系统自动分配/释放,无泄漏风险:

努力前行,总会成为自己心中的那道光 1万+

15、降维算法:原理、实现与应用

本文深入介绍了多种降维算法,包括线性方法如主成分分析(PCA)和线性判别分析(LDA),以及非线性方法如Sammon映射、t分布随机邻域嵌入(t-SNE)和自编码器。文章通过C++库Dlib和Shogun展示了这些算法的具体实现,并结合图像压缩和数据可视化等实际案例,分析了不同算法的适用场景。此外,还探讨了降维算法的选择策略、优化改进方法以及未来发展趋势,为读者提供了全面的技术理解和应用指导。

lemon的博客 116

实验三十七 Windows Server 2012 RDS桌面虚拟化之八RemoteApp程序快速启动部署

实验三十七 Windows Server 2012 RDS桌面虚拟化之八RemoteApp程序快速启动部署 RemoteApp是微软桌面虚拟化架构中的重要组成部分,RemoteApp程序是透过终端服务远程访问的程序,客户端本机无需安装任何应用程序也可像本地资源一样使用remoteapp程序;在Windows Server 2012中RemoteApp就是基于会话的桌面部署,它包含三种主...

系统运维 400

【毕业设计之python系列】基于Flask的在线音乐网设计与实现

本论文旨在通过使用Python的Web框架Flask,设计和实现一个具有完整功能的在线音乐网站。该网站包括用户注册、登录、注销、歌曲上传、编辑、删除、歌单创建、编辑、删除、评论、搜索、音乐播放等功能,并针对不同用户角色(如普通用户、管理员)实现了不同的权限管理。同时,本论文还介绍了如何使用第三方API(如网易云音乐API)获取歌曲信息等技术实现。在设计上,本论文采用了MVC(Model-View-Controller)架构模式,将后端数据处理与前端展示分离,以便于代码的管理和维护。在数据库设计方面,本论文设

m0_56073435的博客 3247

服务器断开实验四十三Windows Server 2012 RDS桌面虚拟化之十四RemoteApp应用程序的安全管理和会话限制...

文章结束给大家来个程序员笑话:[M]     试验四十三Windows Server 2012 RDS桌面虚拟化之十四RemoteApp应用程序的安全管理和会话制约           在Windows Server 2012 RDS桌面虚拟化RemoteApp程序中只要有权限可以访Remoteapp程序的用户或用户组,都可以远程登录到RemoteApp会话主机,明显这是不安全的。    ...

weixin_34138377的博客 324

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Windows Server 2012上的快速便捷的RemoteApp

我将向您展示如何在比观看您喜欢的电视剧的时间短的时间内使用单个服务器设置RemoteApp发布的时间!老实说,如果您完全熟悉新的Windows Server Manager,则应该可以在不到一个小时的时间内完成这一工作。这是疯狂的(好方法!)。开始秒表之前,需要准备两件事: Windows Server 2012中的RDS需要Active Directory 2003或更高版本。 一台运行Wi...

allway2的博客 5180

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

RemoteApp并发连接

windows 2008 TS remoteapp并发连接有限制吗?一台WIN2008 R2,做为DC,并启用remote app。请问可以支持多少客户机并发连接remote app来使用应用程序? 回答:根据您的描述,我对这个问题的理解是: 您想RemoteApp支持多少并发连接。RemoteApp本身默认情况下并没有对并发连接的限制。但是我们如果通过RD Gate...

weixin_34143774的博客 754

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Windows Server 2012 RDS系列:应用程序虚拟化(1)

Windows Server 2012 RDS系列:应用程序虚拟化(1) 概述:本次将系列地测试Windows Server 2012 远程桌面服务(RDS),将过程进行分享,总的感觉比2008 R2更简单了,体现着2012的自动化。 2012的RDS部署有标准部署和快速启动两种,快速启动就是自动快速配置,包括配置集合、发布默认程序,相反,标准部署需手动配置这些,还可定义...

weixin_34168880的博客 617

在 Windows Server 上启用和配置 RemoteApp(远程应用程序)

通过以上步骤,可以在 Windows Server 上快速部署 RemoteApp,实现应用程序的远程集中管理和高效分发。,并安装相关组件(如“远程桌面会话主机”和“远程桌面授权”)。确认发布后,应用程序会出现在 RemoteApp 列表中。在 RemoteApp 集合中,选择目标应用程序,点击。文件分发给用户,双击运行即可远程启动应用程序。确保用户属于允许的 AD 组,且未被组策略限制。,登录后即可看到可用的 RemoteApp。:选择已安装 RDS 角色的服务器。用户安装后,应用程序会出现在本地。

weixin_56025741的博客 4329

限制远程桌面连接的时间

总结:本次故障是因为网络管理员在日常操作中太过随意,没有养成良好习惯造成的。如果每次操作都通过注销来退出的话,就不会出现无法登录的故障。通过多个时间设置可以有效的解决这类问题的发生。不过这种方法还是一种治标不治本的手段,如果我们能够真真正正的突破远程控制连接数的限制的话,就可以随时多人对服务器进行操作,即使使用同一个管理员帐号也是没有任何问题的。这就需要激活远程终端服务,具体方法我们将在下期为各位

云曦沥雨 6025

03-Windows Server 2012 R2 会话远程桌面-标准部署(RemoteApp)

03-Windows Server 2012 R2 会话远程桌面-标准部署(RemoteApp)作者:马博峰在之前的文章中,我们以快速的部署方式完成了RemoteApp的部署,如果在企业正式环境中需要部署基于会话的远程桌面,那么最好采用标准部署,标准部署是将RD 授权、RD 连接代理、RD 网关和 RD Web 访问分别部署到不同的服务器,各服务器有不同的用途,服务器之间进行协作,构成一个完整的应...

weixin_33724659的博客 1271

04-Windows Server 2012 R2 会话远程桌面-标准部署-CA证书(RemoteApp)

在之前的博客中,已经按照标准部署进行了配置,基本上标准的部署已经完成,但是在IT环境中,细节决定成败,在我们通过Web进行访问RemoteApp程序时候,总会有一些警告和阻拦,这些问题虽然不影响到用户的使用,但是这影响到在使用过程中的安全性,解决这些问题的方法就是证书。首先我们要解决的问题就是,当我们登录到RDWeb服务器进行访问时,总是提示“此网站的安全证书存在问题”其次,主要解决的问题是,当启...

weixin_34175509的博客 702

Windows Server 2008 RemoteApp(五)---远程桌面Web访问

在一般情况下,我们是通过客户端上的远程桌面连接器连接到远程桌面服务器,使用的端口默认是3389,但企业内部服务器的3389端口往往是不会在防火墙上对外部开放的,这时就要考虑另一种访问方法,通过部署远程桌面Web访问,使客户端可以通过http协议来访问到远程桌面和RemoteApp应用程序 1.安装远程桌面Web访问组件 按图点击【添加角色服务】 ...

weixin_33733810的博客 469

Windows Server 2012 远程桌面连接被拒绝,因为没有授权此用户帐户进行远程登录

有台安装着Windows Sever 2012操作系统的服务器,新建了一个非管理员的用户账户(例如DUser)后远程登录提示“远程桌面连接被拒绝,因为没有授权此用户帐户进行远程登录”,解决办法: 1.先用管理员账户(例如administrator)登入服务器,Win+R打开运行,输入secpol.msc打开“本地安全策略” 2.找到“本地策略”>>“用户权限分配”>>“...

cgs的博客 2万+
上一篇: 实验四十二Windows Server 2012 RDS桌面虚拟化之十三RemoteApp应用程序部署到开始菜单和启用文件类型关联
下一篇: 实验四十四Windows Server 2012 RDS桌面虚拟化之十五远程桌面网关
kkfloat
博客等级 码龄17年 923粉丝 201原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值