元气骑士远程联机
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了元气骑士远程联机相关的知识,希望对你有一定的参考价值。
参考技术A- 01
【准备工作】
要进行远程联机有几点你需要准备。
1、vpn
用来让两台android设备直接通讯,或者你可以用其他手段,只要你能让两台设备互相发送udp包就可以。我的方法是在自己的阿里云服务器上搭了一个openvpn。
2、一台获得root权限的android设备
由于元气骑士建连实现方式的原因,无法直接通过vpn连接成功,需要进行一个建连数据包的转发动作。目前我的方法是直接在内核层写了一个C程序进行数据包的转发。我不想把日常手机root,而有权限的旧手机也太久没用了,所以最后用的是夜神模拟器。
【操作步骤】
首先,打开虚拟机并连接vpn,连上你的vpn后看看自己的vpn地址,再要到对端的vpn地址就行。
夜神有自带的adb工具,虽然比正常的adb难用一些,不过如果你没有什么深入玩android中Linux层的东西的话,能够将就着先用。找到你的夜神安装路径,我的路径为“D:\\Program Files\\Nox\\bin”。在cmd中进入这个路径,输入以下指令(我截图中由于我有配置环境变量所以没有进入该路径)。
记得adb shell的指令还需要敲入一个回车键。回车完之后如果出现上图的root@android:/ #证明成功,已经进入android系统的调试模式。注意,前面要是root才是开启root成功。
【拷入并执行转发程序】
先退出来,在上面的cmd命令栏中输入“exit”退出adb,或者新开一个cmd。输入下面指令,将转发文件导入系统。前面的是转发程序所在的路径,后面的是放入android里的路径。
出现下图中的输出代表成功。需要注意的是,这里用Push命令的时候要注意一点,我的proxy文件的路径中存在中文的话造成了传输的异常,好像不是一个必现的问题,但是最好还是不要让文件路径存在中文。
接着,进入该路径。
授予程序执行和权限 “chmod 777 udp_proxy_x86”。下面一行是启动指令,-d代表debug模式,23333是监听和目标端口,"10.8.0.10"地方请输入你要联机的对方的vpn的Ip地址。
【打开游戏,建立主机】
一定要在上面的转发程序启动后再开启主机,否则转发程序会启动失败。一切顺利的话adb里面会输出以下信息(当然,ip地址会不一样),这是接收到了建连广播包的信号。这时候让对方在多人游戏里面加入游戏,就可以看到你的主机信息了,也就可以联机了。
Linux用 SSH 协议远程联机
摘要
本文探讨如何在 Linux 中远程联机。
引言
Linux 通常使用 SSH 协议进行远程联机。SSH 的全称是 Secure Shell,其主要目的是在非安全的网络上,提供安全的远程登录和数据传输服务。
使用 SSH 的原因是传统的远程联机协议,如 Rlogin 或 Telnet 在本质上都是不安全的。因为它们在网络上以明文传送数据,用户账号和用户口令很容易受到中间人攻击方式的攻击。就是存在另一台主机,冒充真正的服务器给用户提供服务,或冒充真正的用户向服务器请求服务。
SSH 对所有传输的数据进行加密,使用 SSH 协议能够有效防止远程管理过程中信息泄露的问题。
准备
在 CentOS 中,我们使用的 SSH 服务套件叫做 openssh。正常情况下,CentOS 6 及以上版本都会默认安装 SSH 服务器套件。
服务器套件包含多个软件包,其中必须要有的是 openssh 和 openssh-server,这是我们的核心。使用命令 yum list iinstalled | grep openssh
确认是否安装。如果没有安装,使用命令 yum -y install openssh
安装即可。
接下来就是启动 SSH 服务了。openssh-server 的守护进程名为 sshd,通过 systemctl
命令可以管理守护进程,具体的用法如下:
systemctl status sshd # 查看服务状态
systemctl start sshd # 启动服务
systemctl is-enabled sshd # 设置开机自启动
开启 sshd 服务后,我们就能通过客户端进行远程连接了。
用法
我们以 Windows 客户端为例,展示如何进行远程联机。(目前所有系统基本都自带 openssh 套件,Windows 7 及较低版本除外)
远程联机需要知道远程主机的 IP 地址,系统管理员分配的登录用户名及登录密码。假设远程主机 IP 为 49.233.46.230,以 root 用户身份进行远程登录,开放端口为 22。
打开 Windows 的 CMD,执行以下命令,并按提示输入 root 用户的密码即可登录:
$ ssh root@49.233.46.230 -p 22
The authenticity of host '49.233.46.230 (49.233.46.230)' can't be established.
ECDSA key fingerprint is SHA256:MKMuFZc8IYxBaFVl6WImYXzFR35fIuWp3013+e/OMtg.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '49.233.46.230' (ECDSA) to the list of known hosts.
root@49.233.46.230's password:
提示
我们还可以通过一些配置来提高 SSH 服务器的安全性。
SSH 协议确实是一个安全的协议,这并不等于 SSH 服务是一个安全的服务。一个没有经过良好配置的 SSH 服务器,仍然是黑客下手的好对象。
我们主要通过对 SSH 服务器本身进行配置来提高其安全级别,openssh 服务器的主要配置文件为 /etc/ssh/sshd_config
,使用 vi 命令打开该文件并添加如下几行配置:
PermitRootLogin no # 表示不接受 root 用户的远程连接
PermitEmptyPasswords no # 表示不接受口令为空的用户的远程连接
ClientAliveInterval 30 # 当客户端 30 秒没有动作,服务器将发送 Alive 消息给客户端
ClientAliveCountMax 3 # 如果连发 4 此 Alive 消息,客户端仍然没有动作,服务器将断开连接
改动完成后,保存退出。用以下命令重启 sshd 使得改动生效:
systemctl restart sshd
当然,上述改动也会造成 root 用户无法远程登录主机,并且可能会导致服务器一直需要重连。因此,为方便起见,无需更改 /etc/ssh/sshd_config
,使用默认的就行。
参考
中国大学 MOOC | Linux 系统管理 | 主题 11 用好远程联机服务器 | 小节 1 用 SSH 协议远程联机
以上是关于元气骑士远程联机的主要内容,如果未能解决你的问题,请参考以下文章