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 端口
相关推荐
ii_best3 小时前
按键精灵支持安卓14、15系统,兼容64位环境开发辅助工具
android
美狐美颜sdk3 小时前
跨平台直播美颜SDK集成实录:Android/iOS如何适配贴纸功能
android·人工智能·ios·架构·音视频·美颜sdk·第三方美颜sdk
恋猫de小郭8 小时前
Meta 宣布加入 Kotlin 基金会,将为 Kotlin 和 Android 生态提供全新支持
android·开发语言·ios·kotlin
aqi008 小时前
FFmpeg开发笔记(七十七)Android的开源音视频剪辑框架RxFFmpeg
android·ffmpeg·音视频·流媒体
androidwork10 小时前
深入解析内存抖动:定位与修复实战(Kotlin版)
android·kotlin
梦天201510 小时前
android核心技术摘要
android
szhangbiao12 小时前
“开发板”类APP如果做屏幕适配
android
高林雨露13 小时前
RecyclerView中跳转到最后一条item并确保它在可视区域内显示
android
移动开发者1号15 小时前
ReLinker优化So库加载指南
android·kotlin
山野万里__15 小时前
C++与Java内存共享技术:跨平台与跨语言实现指南
android·java·c++·笔记