众所周知, termux 上的 sshd 不能通过 IP 连接, 只能使用密钥, 对于使用 PuTTY 的 Windows 用户, 怎么办呢?

由于 PuTTY 支持 telnet, 而 termux 也预装了 telnetd, 只需要输入 telnetd 即可在 8023 端口开启服务, 但是这不安全, 因为不需要任何认证.

于是我想到在 ~/.bashrc 中加入验证:

当然, 这也不是长久之计, 毕竟^c是会中断该程序的.

还得想办法使用 sshd 啊! 经过我的艰苦探索, 终于勉强成功了!

(

当然, 后面知道了防止中断的方法, 在脚本行首写:

trap "echo \""

请输入密码! \"" INT QUIT TSTP

在接收到信号后,可以采取的操作包括:

  • 清除文件
  • 提示用户是否应当终止脚本
  • 忽略该信号
  • 进行处理

捕捉信号

要捕捉发送到您的进程的信号,请使用内置的 trap 命令。在捕捉到信号后,正在执行的当前命令会尝试在 trap 接管之前结束执行。如果该命令为 SIGKILL,那么终止将立即执行。如果忽略某些信号,将执行默认操作。例如,如果只对 SIGINT 执行 trap 命令,但是对 SIGQUIT 不执行任何操作,然后您的进程捕捉到了 SIGQUIT 信号,那么将执行默认操作(很可能是终止您的脚本,而这正是您不希望看到的)。

trap 命令的格式为:

1
trap 'command_list'  signals

其中,command_list 是一个命令清单,可以包含一个函数,在接收到信号列表中包含的某个信号后运行。而 signals 是将要捕捉的信号的列表。

要忽略某个信号,使用两个单引号代替 command_list:

1
trap ''  signals

要重置 trap,使用:

1
trap - signals

其中,signals 为信号列表。

)

首先使用 PuTTYGen.exe 生成 RSA 密钥, 并将 Private Key 保存.

复制框中的 RSA 公钥, 打开 termux, 添加到 ~/.ssh/authorized_keys

接下来, 使用默认端口 8022 连接 termux, 当然, 你需要使用到刚才保存的私钥.

登录(无需用户名):

termux 开启 sshd的更多相关文章

  1. BackTrack 5 开启SSHD服务

    BackTrack 5 开启SSHD服务 1 service ssh start 但启动后,仍然无法从远程连接,会有提示: 1 Read from socket failed: Connection ...

  2. 〖Android〗利用droidsshd在Android手机中开启 sshd,sftp,..

    源码下载地址: src: git clone https://code.google.com/p/droidsshd/ apk: http://droidsshd.googlecode.com/fil ...

  3. OpenSuSe开启sshd服务

    需要测试OpenSuSE11 x64上mysql性能,发现很多东西与centos以及红帽有差别.其中最切身的就是sshd服务的开启. 安装好OpenSuSE 11后,发现ssh连接不上去,可以ping ...

  4. kaili开启sshd服务

    使用xshell远程连接kali 2.0时要开启kaili上的sshd服务,具体方法如下: 命令: vim /etc/ssh/sshd_config # Package generated confi ...

  5. Docker中开启sshd服务

    ssh服务安装 安装ssh服务 #yum install openssh-server -y 安装passwd(修改密码需要) #yum install passwd -y 修改sshd_config ...

  6. ubuntu开启sshd

    SSH分客户端openssh-client和openssh-server 如果你只是想登陆别的机器的SSH只需要安装openssh-client(ubuntu有默认安装,如果没有则sudo apt-g ...

  7. redhat或centos关闭防火墙并开启sshd服务

    使用putty连接虚拟机的redhat连不上时处理方案: 这里使用的是VMware Workstation,  将宿主机与虚拟机之间的网络使用 ‘桥接方式’: 1.关闭宿主机与虚拟机的防火墙, 在re ...

  8. UBUNTU下如何开启SSHD服务

    “人生本来就有很多事是徒劳无功的.”就像青春,虽然徒劳,却在人的心里住得最久,挥之不去,怀念那段青涩年华,怀念它的... sudo apt-get install openssh-server Ubu ...

  9. OpenStack开启sshd

    修改配置sshd的文件 1.      修改sshd配置文件 /etc/ssh/sshd_config 2.      将#PasswordAuthentication no的注释去掉,并将no改为y ...

随机推荐

  1. 本文之后都以Vol1来指代

    本文参考文档是<64-ia-32-architectures-software-developer-vol-1-manual>(本文之后都以Vol1来指代),介绍了x86架构的基础.这些基 ...

  2. AtCoder ExaWizards2019题解

    AtCoder ExaWizards2019题解 AtCoder (因为代码直接用模板写的,可能有点冗长) A.Regular Triangle 给你三根棍子的长度,问你能否用他们组成等边三角形. 什 ...

  3. [luogu3878][TJOI2010]分金币【模拟退火】

    题目描述 现在有n枚金币,它们可能会有不同的价值,现在要把它们分成两部分,要求这两部分金币数目之差不超过1,问这样分成的两部分金币的价值之差最小是多少? 分析 根据模拟退火的基本套路,先随机分两堆金币 ...

  4. Entity Framework 问题集锦

    作者:疯吻IT 出处:http://fengwenit.cnblogs.com 1. No Entity Framework provider found for the ADO.NET provid ...

  5. sql 语句查所有父级

    常见问题,给一个记录ID,查出它的所有父级,直到顶级 使用SMSS,sql server,找到一个办法. 思路是分两步,先循环找到所有父级的ID,再用IN查出所有父级 列说明  ID=PK  Pare ...

  6. Yii2 如何输出 sql 语句?

    可以用 $model->find()->createCommand()->getRawSql(); 不能带 all(). find() 它的 返回值类型是 yii\db\Active ...

  7. Spring Cloud下基于OAUTH2认证授权的实现

    GitHub(spring -boot 2.0.0):https://github.com/bigben0123/uaa-zuul 示例(spring -boot 2.0.0): https://gi ...

  8. 关于 tlb 文件

    来自:http://blog.csdn.net/lcl_data/article/details/7418387 tlb文件是什么?tlb文件是一个说明文件,通过TLB文件,用户可以得知你的DLL中的 ...

  9. linux系统调用之用户管理

    getuid 获取用户标识号 setuid 设置用户标志号 getgid 获取组标识号 setgid 设置组标志号 getegid 获取有效组标识号 setegid 设置有效组标识号 geteuid ...

  10. (线性dp 最大连续和)POJ 2479 Maximum sum

    Maximum sum Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 44459   Accepted: 13794 Des ...