合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
[原文链接](https://blog.csdn.net/qq_33303204/article/details/84728698) ` `默认安装 Tiny Core(Core)Linux 系统并没有任何默认安装的 SSH 服务,这意味着您无法通过 ssh 登录来远程配置这个极为简单的操作系统。如果您希望在无界面运行的机器上运行 Tiny Core 并希望通过 ssh 登录会话远程配置它,请按照本文在 Tiny Core 上配置 SSH 服务器。 ## 安装和配置 SSH 服务 ### 1. 安装 OpenSSH 包 ` `使用以下命令安装 OpenSSH 软件包: ```shell tce-load -wi openssh ``` ### 2. 使用模板创建 SSH 配置文件 ` `使用以下命令将示例配置文件复制到 ssh\_config 文件中: ```shell sudo cp /usr/local/etc/ssh/sshd_config.orig /usr/local/etc/ssh/sshd_config ``` ### 3. 启动 SSH 服务 ` `使用以下命令启动 SSH 服务: ``` sudo /usr/local/etc/init.d/openssh start ``` ### 4. 更改默认用户 “tc” 的密码 ` `更改默认用户 “tc” 的密码,以便您可以在 ssh user/password 的提示框下输入此密码。使用以下命令以更改密码: ``` echo tc:密码 | sudo chpasswd ``` ` `注意:如果要更改 root 密码,可以使用以下命令以更改 root 更改密码: ``` echo root:password | sudo chpasswd ``` ### 5. 检查IP地址 ` `要进入您的 Tiny Core 主机,您需要分配给它的 IP 地址。您可以使用以下命令获取 IP 地址: ``` ifconfig ``` ` `注意虚拟机中的话请打开单独的一个虚拟网卡用于虚拟机和主机通信,这样才能在后面使用ssh连接虚拟机中的tinycore。 ### 6. 验证 SSH 服务 ` `您可以使用以下命令检查您的计算机是否正在侦听端口 22 : ``` tc@box:~$ ps | grep ssh 1339 root /usr/local/sbin/sshd 1350 tc grep ssh tc@box:~$ sudo netstat -anp | grep 22 tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1339/sshd netstat:/proc/net/tcp6: No such file or directory netstat:/proc/net/udp6: No such file or directory netstat:/proc/net/raw6: No such file or directory ``` ## 使SSH配置持久化 ### 基本配置 ` `由于Tiny Core Linux 运行在系统内存(RAM),如果系统重新启动,它将丢失所有配置的更改。要使配置持久,您可以按照以下步骤操作: ` `要使每次启动计算机时加载库或执行命令,都需要将其添加到 ‘/opt/bootlocal.sh’ 文件中。 首先要使用以下的命令编辑 ‘/opt/bootlocal.sh’ 文件的权限以让其可以被编辑: ~~~shell sudo chmod -R 777 /opt/bootlocal.sh ~~~ ` `使用以下命令使系统重启后自动修改默认用户密码: ``` sudo echo 'echo tc:password | chpasswd' >> /opt/bootlocal.sh ``` ` `使用以下命令使系统重启后自动使用模板创建 SSH 配置文件: ``` sudo echo 'sudo cp /usr/local/etc/ssh/sshd_config.orig /usr/local/etc/ssh/sshd_config' >> /opt/bootlocal.sh ``` ` `使用以下命令使系统重启后自动启动 SSH 服务: ``` sudo echo '/usr/local/etc/init.d/openssh start&' >> /opt/bootlocal.sh ``` ` `使用以下命令显示 ‘/opt/bootlocal.sh’ 文件的最终结果: ``` tc@box:~$ cat /opt/bootlocal.sh #!/bin/sh # put other system startup commands here echo tc:password | chpasswd sudo cp /usr/local/etc/ssh/sshd_config.orig /usr/local/etc/ssh/sshd_config /usr/local/etc/init.d/openssh start& ``` ### 编辑 ’ .filetool.lst ’ 文件 ` `文本文件 ‘/opt/.filetool.lst’ 列出了要在断电时备份的文件和目录(需手动使用 ‘[filetool.sh](http://filetool.sh) -b’ 命令)并在重新启动后(自动)恢复。使用以下 2 个命令将 SSH 和密码影子文件路径添加到此文件: ``` sudo echo '/usr/local/etc/ssh' >> /opt/.filetool.lst sudo echo '/etc/shadow' >> /opt/.filetool.lst ``` ### 备份 ’ .filetool.lst ’ 文件中定义的配置 ` `Tiny Core 包含 ‘filetool’ 实用程序,用于使用 ‘/opt/.filetool.lst’ 路径中的定义保存个人设置和数据。您可以使用以下命令触发备份: ``` filetool.sh -b ``` ` `以下是此命令的控制台输出: ``` tc@box:~$ filetool.sh -b Backing up files to /mnt/sda1/tce/mydata.tgz/ Done. ``` ` `以上步骤完成后,您就可以尝试使用以下命令重新启动系统以测试 SSH 服务是否仍然有效: ## 自动化安装脚本 ``` ################################################################################## ## ## install_ssh.sh ## ## by JunchengLai ## from https://github.com/junchenglai/Tiny-Core-Linux/blob/master/install_ssh.sh ## ################################################################################## # 安装 OpenSSH 包 tce-load -wi openssh # 使用模板创建 SSH 配置文件 sudo cp /usr/local/etc/ssh/sshd_config.orig /usr/local/etc/ssh/sshd_config # 启动 SSH 服务 sudo /usr/local/etc/init.d/openssh start& # 更改默认用户 “tc” 的密码 echo tc:password | sudo chpasswd # 编辑 ’.filetool.lst’ 文件 sudo echo '/usr/local/etc/ssh' >> /opt/.filetool.lst sudo echo '/etc/shadow' >> /opt/.filetool.lst # 编辑启动文件 sudo echo 'echo tc:password | chpasswd' >> /opt/bootlocal.sh sudo echo 'sudo cp /usr/local/etc/ssh/sshd_config.orig /usr/local/etc/ssh/sshd_config' >> /opt/bootlocal.sh sudo echo 'sudo /usr/local/etc/init.d/openssh start' >> /opt/bootlocal.sh # 备份配置 sudo filetool.sh -b ``` 使用以下命令就可以部署 SSH 服务 ```shell sudo echo 'nameserver 114.114.114.114' >> /etc/resolv.conf wget https://raw.githubusercontent.com/junchenglai/Tiny-Core-Linux/master/install_ssh.sh sudo sh ./install_ssh.sh ``` ## 第二种配置方式 ` `tiny core是在内存红运行的linux,文件 `opt/bootlocal.sh`会在开机时候运行,那么将配置文件写入进去,然后讲数据备份就好了。 ` `为bootlocal.sh添加权限 ``` chmod -R 777 /opt/bootlocal.sh ``` ` `使用命令`bim /opt/bootlocal.sh`编辑bootlocal.sh文件,如下是bootlocal.sh编辑后的文件内容: ``` #!/bin/sh # put other system startup commands here #config ssh echo cp /usr/local/etc/ssh/sshd_config.orig /usr/local/etc/ssh/sshd_config echo tc:ppp | sudo chpasswd sudo netstat -anp | grep 22 sudo /usr/local/etc/init.d/openssh restart ``` ` `然后使用命令`backup uility`将数据备份起来。之后每次开机就可以使用了。 ![](https://img.kancloud.cn/8d/e2/8de2c962d7de4091cf1c80665b198d1b_633x475.png)