<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/ DTD/wml_1.1.xml">

<wml>
<head>
<meta http-equiv="cache-control" content="max-age=180,private" />
</head>
<card title="Openwrt中TTYD终端无需输入密码直接登录">
<p>
作者:<a href="index.php?action=showuser&amp;userid=1&amp;hash=">admin</a><br />时间:2024-09-19 22:25<br />分类:<a href="index.php?action=list&amp;cid=3&amp;hash=">电脑技术</a><br />内容:
Openwrt中TTYD终端无需输入密码直接登录


修改ttyd配置文件 /etc/config ，在 /bin/login 后面加 -f root  变成 '/bin/login -f root'




XML/HTML代码


    config ttyd

            option interface '@lan'

            option command '/bin/login -f root'







然后在输入命令重载ttyd无需重启即可生效。




XML/HTML代码


    /etc/init.d/ttyd reload







也可以使用sed命令把文件中  '/bin/login' 替换为 '/bin/login -f root' 实现一键搞定




XML/HTML代码


    sed -i 's|^/bin/login$|/bin/login -f root|g' /etc/config/ttyd &amp;&amp; /etc/init.d/ttyd reload

    或者

    sed -i '/\/bin\/login -f root/!s|/bin/login|/bin/login -f root|' /etc/config/ttyd &amp;&amp; /etc/init.d/ttyd reload







如何修改源代码实现编译的Openwrt固件直接无需输入密码直接登录


通过查看ttyd源代码发现配置文件和Openwrt的ttyd配置文件完全一样


可以直接修改源代码，在Openwrt源码目录直接输入下面命令




XML/HTML代码


    sed -i 's|^/bin/login$|/bin/login -f root|g' feeds/packages/utils/ttyd/files/ttyd.config

    或者

    sed -i '/\/bin\/login -f root/!s|/bin/login|/bin/login -f root|' feeds/packages/utils/ttyd/files/ttyd.config







TTYD独立安装和使用


Github：https://github.com/tsl0922/ttyd


Dockerhub：https://hub.docker.com/r/tsl0922/ttyd


Linux系统安装ttyd


1、官方编译可执行程序：https://github.com/tsl0922/ttyd/releases  （下载对应版本直接运行）


2、Homebrew安装 : brew install ttyd


3、snap安装: sudo snap install ttyd --classic


4、源代码编译 (debian/ubuntu):




XML/HTML代码


    sudo apt-get update

    sudo apt-get install -y build-essential cmake git libjson-c-dev libwebsockets-dev

    git clone https://github.com/tsl0922/ttyd.git

    cd ttyd &amp;&amp; mkdir build &amp;&amp; cd build

    cmake ..

    make &amp;&amp; sudo make install







编译需要组件：libwebsockets-dev


5、OpenWrt安装：opkg install ttyd


6、Docker安装：


与多个客户端共享单个 docker 容器：docker run -it --rm -p 7681:7681 tsl0922/ttyd


为每个客户端创建新的 docker 容器：ttyd docker run -it --rm ubuntu


以上均为简单示例，具体用法自己可以根据官方教程修改使用。


安装教程 详细用法
</p><p>
<a href="index.php?action=login&amp;hash=">立即登陆发表评论</a><br />
</p>
<p><a href="index.php?action=list&amp;hash=">返回日志列表</a><br /><a href="index.php?action=index&amp;hash=">返回主页</a></p>
</card>
</wml>
