Android 终端模拟器 termux app

Android 终端模拟器 Termux

    • [1 Termux App](#1 Termux App)
    • [2 配置ssh连接](#2 配置ssh连接)
      • [2.1 ssh 服务](#2.1 ssh 服务)
      • [2.2 ssh 客户端](#2.2 ssh 客户端)
    • [3 关闭sshd服务](#3 关闭sshd服务)

1 Termux App

📌 Termux 是一款 Android 终端模拟器Linux 环境 应用,可直接运行,无需 root 权限或设置

!note\] termux-app 1. 2. 3. [Termux 软件仓库](https://mirrors.tuna.tsinghua.edu.cn/help/termux/)

  1. 启用存储访问权限

    shell 复制代码
    # 弹出Android运行时权限,选择 允许, 这时可以访问得到 storage
    termux-setup-storage
  2. 更换源

    shell 复制代码
    # 按照初始进入提示, 使用GUI操作
    termux-change-repo
    • 用↓选择 Single mirror, 然后 空格 选中,再OK确认

    • 然后在用↓选择国内的镜像,比如清华的,阿里的

  3. 升级

    shell 复制代码
    pkg update && pkg upgrade
  4. 安装所需软件,根据自己的需要

    shell 复制代码
    # pkg install git
    pkg install git openssh
    # pkg install python nodejs clang git vim openssh

2 配置ssh连接

2.1 ssh 服务

shell 复制代码
pkg install openssh nmap

# 2. 设置密码, 输入密码并确认
passwd

# 3. 查看本机ip, 连接的WiFi, 找到 wlan0,比如我这里IP为:192.168.26.27
ifconfig

# 4. 用户,比如本次输出:u0_a433 将作为ssh连接时的用户名
whoami

# 5. 启动ssh服务, 默认端口 8022
sshd
# 或者指定端口
sshd -p 8022

# 6. 在Termux中启动SSH服务后,每次打开应用它会自动启动. 可关闭
pkill sshd

🗺️ 验证sshd 的启动

shell 复制代码
# 1. 手机termux中验证ssh服务启动,不要真正链接,根据输出要你确认连接的信息判断是否已启动
# ssh localhost -p 8022
#
# 1. 检测目标主机是否在线、端口开放情况、运行的服务
# nmap 192.168.26.27

🐢 Adb 环境查看 sshd 进程是否启动

shell 复制代码
adb shell ps | findstr ssh

# 会看到下面的打印,表示已启动
# u0_a433      15533     1   10871804   3160 0                   0 S sshd

✔ 使用密码连接:

  1. 终端

    shell 复制代码
    # 1. 终端连接,然后会验证前面设置的 密码
    ssh u0_a433@192.168.26.27 -p 8022
  2. ssh客户端

2.2 ssh 客户端

  1. windows 终端

    shell 复制代码
    # 在 D:\Home\.ssh 目录下生成 termux_app_ed25519 密钥对
    ssh-keygen -t ed25519 -f D:\Home\.ssh\termux_app_ed25519 -C "xx@gmail.com"
    
    #把公钥
    adb push D:\Home\.ssh\termux_app_ed25519.pub /sdcard/document
    • ssh-keygen 未使用 -f 指定路径,则默认在 C:\Users\用户名\.ssh
  2. 先试用ssh客户端或者终端命令行基于密码登录

    shell 复制代码
    # 1. 建立一个软连接 docs , 指向 /storage/emulated/0/document
    ln -s  /storage/emulated/0/document docs
    
    # 使用软连接跳转到adb push的目录,就是刚才的document
    cd ./docs
    
    # 2. 把公钥写入 authorized_keys
    cat termux_app_ed25519.pub >> ~/.ssh/authorized_keys
    • ln -s <path> <link_name> : 创建一个指向path的软连接link_name
  3. windows 配置

    📍 C:\Users\用户名\.ssh 下的 文件(没有则创建)config 配置私钥路径

    shell 复制代码
    # termux
    Host 192.168.26.27
    HostName 192.168.26.27
    Port 8022
    PreferredAuthentications publickey
    IdentityFile D:/Home/.ssh/termux_app_ed25519

✔ 使用密钥连接

  1. 终端

    shell 复制代码
    # 不用输密码,直接输入 yes 继续就会进入
    ssh u0_a433@192.168.26.27 -p 8022
  2. ssh客户端配置

3 关闭sshd服务

📌 在Termux中启动SSH服务 后,每次打开应用它会自动启动。要关闭SSH服务 ,可通过 pkill sshd

🐢 验证 sshd 是否关闭

shell 复制代码
pkill sshd

# 如果状态为closed,则已成功关闭
nmap localhost -p 端口
相关推荐
feiyangqingyun44 分钟前
基于Qt和FFmpeg的安卓监控模拟器/手机摄像头模拟成onvif和28181设备
android·qt·ffmpeg
用户2018792831675 小时前
ANR之RenderThread不可中断睡眠state=D
android
煤球王子5 小时前
简单学:Android14中的Bluetooth—PBAP下载
android
小趴菜82275 小时前
安卓接入Max广告源
android
齊家治國平天下5 小时前
Android 14 系统 ANR (Application Not Responding) 深度分析与解决指南
android·anr
ZHANG13HAO5 小时前
Android 13.0 Framework 实现应用通知使用权默认开启的技术指南
android
【ql君】qlexcel5 小时前
Android 安卓RIL介绍
android·安卓·ril
写点啥呢5 小时前
android12解决非CarProperty接口深色模式设置后开机无法保持
android·车机·aosp·深色模式·座舱
IT酷盖5 小时前
Android解决隐藏依赖冲突
android·前端·vue.js
努力学习的小廉7 小时前
初识MYSQL —— 数据库基础
android·数据库·mysql