我正在尝试遵循本指南,但进展还不够。我正在使用运行最新 ubuntu 20.04 的非常基本的数字海洋 VPS,并且在尝试创建证书颁发机构时收到此错误。
kieran@azuracast:~$ pki --gen --type rsa --size 4096 --outform pem > ~/pki/private/ca-key.pem
TPM 2.0 - 无法加载“libtss2-tcti-tabrmd.so.0” “
插件‘tpm’:加载失败 - tpm_plugin_create 返回 NULL
kieran@azuracast:~$
评论中似乎有其他人收到了此消息,但没有回复。有什么想法吗?
我的公司要求VPN连接到我们的开发系统,这是我第一次尝试在家里安装Android应用程序.事实证明,模拟器不想使用VPN接口,所以即使我在连接VPN的笔记本电脑上连接到我们的开发系统,其上运行的模拟器也没有.
我想到了3个解决方案:
2和3可能会工作,但我仍然想知道是否有一种简单的方法可以让仿真器使用VPN接口而无需解决方法.
我正在运行OS X 10.7并且我已经尝试使用网络>>设置服务订单调整接口优先级顺序.
我想我可以把旧戴尔掸掉并在那里试一试,但我希望得到同样的结果.
我决定用Java编写自己的轻量级VPN服务器.从编程的角度来看,在我看来,VPN服务器只是一个传递代理,可以加密来自客户端的流量,并在服务器上对其进行解密.有人能指出我写这种服务器的骨架吗?
我知道有很多开箱即用甚至是开源的,但不幸的是,即使我知道几种Web编程语言,我看到的C代码示例也没有以我能理解的方式记录/构建.
我想象的我需要的部分是:
我计划使用通用模块(并创建适配器)的部分是Cryptographic Algorythms(尽管AES看起来像DES/3DES - Noobs这样的窗口,但最好是AES)
如果有人可以为IPSec VPN服务器所需的部件添加更多细节,请随时提供.因为有必要从我可以告诉的旧Linux硬件上运行它,服务器应该是IPSec而不是SSLVPN热点.目标平台是一个旧的1.5 Ghz intel盒子,我用2 GB的DDR2 ram,镜像的100 GB硬盘和2 GB的Nic.
从好的方面来看,因为有很多类型的客户端VPN,我很确定不需要为我的需求制作一个.
我正在尝试编写一个可以连接到我的VPN服务器的应用程序pptp protocol,因为我正在研究我发现android.net.vpnservice我可以连接,但是当我阅读一些文档时,不清楚如何连接到VPN(没有用于设置用户名或密码的API,也没有用于设置我的VPN类型的API(l2tp,pptp);我还测试了Google提供的示例应用程序(toyvpn),也没有我之前提到过的内容.
这是我发现的一些代码:
// Create a new interface using the builder and save the parameters.
mInterface = builder.setSession(mServerAddress)
.setConfigureIntent(mConfigureIntent)
.establish();
mParameters = parameters;
Run Code Online (Sandbox Code Playgroud) 我正在使用内置的OS X VPN工具连接到我公司的网络.我注意到,当我连接时,所有流量都通过VPN.
在过去,当我使用Windows VPN工具时,我能够对其进行配置,使得只有到某些IP范围和/或主机名的流量通过VPN传输,其他所有内容都通过本地网络传输.
这是否可以使用默认的OS X VPN?我在设置中没有看到任何内容......
我有以下脚本,但我需要获得$ i变量值,每个块以EOF开头并以EOF结尾.
它不是读取变量值而是放入$ i
/var/tmp/vpn.sh我有:
#!/bin/bash
amazonEth0="10.0.0.18"
amazonWan0="4.9.2.9"
vpnServer="4.8.8.6"
hosttoHost1="10.109.0.20/32"
hosttoHost2="10.109.0.21/32"
hosttoHost3="10.109.58.6/32"
hosttoHost4="10.109.59.3/32"
for i in 1 2 3 4
do
cat > /tmp/test$i.conf << \EOF
#Step 3
conn test"$i"
#auto=start
type=tunnel
authby=secret
pfs=no
aggrmode=no
ikelifetime=28800s
lifetime=3600s
ike=aes128-md5;modp1024!
phase2alg=aes128-md5;modp1024
forceencaps=yes
left=$amazonLan0
leftid=$amazonWan0
leftsourceip=$amazonWan0
right=$vpnServer
rightsubnet=$hosttoHost$i
EOF
done
### Run me
cat > /var/tmp/vpn.sh << \EOF
service ipsec restart
######## Apply for loop here, instead of many many lines ###########
# for i in 1 2 3 4
# do
# …Run Code Online (Sandbox Code Playgroud) 自从iOS 8 beta发布以来,我在其捆绑包中找到了一个Network Extension框架,该框架将允许开发人员以编程方式配置和连接到VPN服务器,而无需安装任何配置文件.
该框架包含一个名为NEVPNManager的主要类.这个类还有3个主要方法,可以让我保存,加载或删除VPN首选项.我在viewDidLoad方法中编写了一段代码,如下所示:
NEVPNManager *manager = [NEVPNManager sharedManager];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(vpnConnectionStatusChanged) name:NEVPNStatusDidChangeNotification object:nil];
[manager loadFromPreferencesWithCompletionHandler:^(NSError *error) {
if(error) {
NSLog(@"Load error: %@", error);
}}];
NEVPNProtocolIPSec *p = [[NEVPNProtocolIPSec alloc] init];
p.username = @“[My username]”;
p.passwordReference = [KeyChainAccess loadDataForServiceNamed:@"VIT"];
p.serverAddress = @“[My Server Address]“;
p.authenticationMethod = NEVPNIKEAuthenticationMethodCertificate;
p.localIdentifier = @“[My Local identifier]”;
p.remoteIdentifier = @“[My Remote identifier]”;
p.useExtendedAuthentication = NO;
p.identityData = [My VPN certification private key];
p.disconnectOnSleep = NO;
[manager setProtocol:p];
[manager setOnDemandEnabled:NO];
[manager setLocalizedDescription:@"VIT VPN"];
NSArray …Run Code Online (Sandbox Code Playgroud) 我正在以编程方式在Android设备上设置VPN连接.我成功地使用OS 2.3.5和之前的设备(我使用反射来访问隐藏的类).但是在android 4.0中,他们摆脱了旧类并使用了VPNService类.
我认为最好的起点是使用Android提供的ToyVPN示例,但我面临很多挑战.在示例代码中,他们只需要发送服务器地址:
InetSocketAddress server = new InetSocketAddress(mServerAddress, Integer.parseInt(mServerPort));
Run Code Online (Sandbox Code Playgroud)
然后通过打开频道创建VPN隧道:
tunnel = DatagramChannel.open();
Run Code Online (Sandbox Code Playgroud)
但在我的情况下,我需要发送服务器地址,用户名和密码.到目前为止,我还没有想出如何这样做.我最好的猜测是做这样的事情:
Authenticator.setDefault(new Authenticator(){
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("user","pass".toCharArray());
}});
try {
// Create a DatagramChannel as the VPN tunnel.
tunnel = DatagramChannel.open();
Run Code Online (Sandbox Code Playgroud)
但这没效果.所以我要问的是:
编辑
我忘了提到我需要指定VPN类型(PPTP,L2TP,L2TP/IPSec PSK或L2TP/IPSec CRT).
curl像和这样的命令wget会出现以下错误:curl: (35) error:0A000152:SSL routines::unsafe legacy renegotiation disabled。我正在使用 WSL2 Ubuntu 并在公司防火墙上。我确实将受信任的根 ca 证书导出到 WSL 并更新了证书。然而,在下载 Jenkins、Terraform 等工具时仍然面临这个问题,例如尝试获取 Jenkins 时。
curl -fsSL http://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo tee /usr/share/keyrings/jen
kins-keyring.asc > /dev/null
curl: (35) error:0A000152:SSL routines::unsafe legacy renegotiation disabled
Run Code Online (Sandbox Code Playgroud)
我使用的是公司 VPN。没有 VPN 命令可以正常工作,但是使用公司网络上的 VPN 时我会收到这些错误。如果我与固件团队一起进行 SSL 绕过,它就会起作用。不确定这里是否还有其他问题。
sudo vim /etc/ssl/openssl.cnf
`#
# OpenSSL example configuration file.
# See doc/man5/config.pod for more info.
#
# This is mostly being used for generation of certificate requests,
# but may be used …Run Code Online (Sandbox Code Playgroud) 我正在尝试在启用VPN的情况下在MacOS上运行docker镜像(TUN设备).Docker容器可以访问Internet,但无法访问vpn背后的资源.使Docker进入VPN网络的正确方法是什么?
我试图
docker run --net host让docker共享主机网络,它没有帮助.主机可以访问VPN资源,docker容器无法解析其名称..
vpn ×10
android ×3
networking ×2
amazon-ec2 ×1
android-4.0-ice-cream-sandwich ×1
bash ×1
curl ×1
docker ×1
ios ×1
ios8 ×1
ipsec ×1
java ×1
linux ×1
macos ×1
objective-c ×1
openvpn ×1
pptp ×1
ssl ×1
ubuntu ×1
windows-subsystem-for-linux ×1
wsl-2 ×1