[原文鏈接](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`將數據備份起來。之后每次開機就可以使用了。

- 0 工具
- 0.1 圖片無損放大
- 1 deepin系統
- 1.1 deepin系統安裝
- 1.2 deepin創建desktop文件
- 1.3 瀏覽器運行虛擬機
- 1.4 linux的百度網盤突然打不
- 1.5 deepin安裝后個人配置
- 1.5.1 安裝公式編輯器AxMath
- 1.5.2 Deepin標題欄太高的解決辦法(自定義高度)
- 1.5.3 linux下配置VS Code的標題欄風格
- 1.5.4 安裝腳本解釋器fish
- 1.6 關于軟件安裝
- 1.6.1 rpm和deb包想換轉換的方法
- 1.7 deepin開機自啟的設置方法
- 2 tiny core系統
- 2.1 安裝系統到硬盤
- 2.2 系統軟件安裝介紹
- 2.3 安裝控制臺計算器bc
- 2.4 關機保存的方法
- 2.5 linux文件結構說明
- 2.6 為tinycore配置ssh
- 3 使用Linux中的一些技巧
- 3.1 軟連接的使用
- 3.2 LInux下解壓
- 3.3 刪除操作
- 3.4 Zenity-在命令行和Shell腳本中創建圖形(GTK +)對話框
- 3.4.1 列表框
- 3.4.2 口令對話框
- 3.4.3 消息對話框
- 3.4.3.1 信息對話框
- 3.4.3.2 錯誤框
- 3.4.3.3 問題對話框
- 3.4.3.4 警告對話框
- 3.4.4 范圍對話框(滑條)
- 3.4.5 文件選擇對話框
- 3.4.6 表單對話框
- 3.4.7 文本信息框
- 3.4.8 進度框
- 3.4.9 文本輸入框
- 3.4.10 通知區域圖標
- 3.4.11 日歷對話框
- 3.4.12 顏色對話框
- 3.4.13 上述對話框測試文件
- 3.4.14 使用C++調用zenity
- 3.5 Linux whereis、find和locate命令
- 3.6 字體下載
- 3.7 使用Electron 創建跨平臺的應用程序
- 3.8 shell的使用
- 3.8.1 $$,$?等表示什么
- 3.8.2 shell隨機產生某一個范圍內的整數
- 3.8.3 寫shel腳本的一些使用操作
- 3.8.4 linux shell操作二進制文件
- 3.8.5 shell中的一些實用技巧
- 3.8.5.1 列出當前路徑下的所有文件夾
- 3.8.5.2 列出當前路徑下所有文件
- 3.8.5.3 獲取當前虛擬終端的大小
- 3.8.5.4 判斷輸入字符串是否為數字
- 3.8.5.5 bash中的數學運算
- 3.8.5.6 按照文件創建時間順序列出文件
- 3.8.5.7 echo輸出含空格不換行的設置方法
- 3.8.5.8 find 遞歸/不遞歸 查找子目錄的方法
- 3.8.5.9 echo顯示顏色設置
- 3.8.5.10 bash中使用${}字符操作方法
- 3.8.5.11 ls查找目錄,文件,軟連接等的方法
- 3.8.5.12 檢測某個程序是否在運行
- 3.8.5.13 bash/shell 解析命令行參數工具:getopts/getopt
- 3.8.5.14 獲取腳本的絕對路徑
- 3.8.6 使用bash寫的腳本管理腳本
- 3.9 Linux創建自定義命令
- 3.10 deepin掛載遠程文件夾到本地
- 3.11 linux root用戶添加用戶
- 3.12 實用腳本或者命令
- 3.12.1 命令行 將ppt轉換為 pdf
- 3.12.2 deepin上實現自定義命令
- 4 slitaz系統
- 4.1 系統安裝
- 4.2 安裝軟件命令tazpkg
- 4.3 使用說明
- 4.4 用 tazlito 構建 livecd自制linux系統
- 4.5 英文顯示支持設置方法
- 4.6 配置ssh
- 5 busybox的編譯使用
- 5.1 busybox介紹
- 5.2 busybox編譯使用
- 6 配置自己的linux
- 6.1 在deepin上編譯linux內核
- 7 每天一個linux命令
- 7.1 文件管理類
- 7.1.1 cat--接文件并打印到標準輸出設備上
- 7.1.2 chattr--改變文件屬性
- 7.1.3 chgrp--變更文件或目錄的所屬群組
- 7.1.4 chmod --控制文件如何被他人所調
- 7.1.5 chown命令--指定文件的擁有者改為指定的用戶或組
- 7.1.6 grep命令--用于查找文件里符合條件的字符串
- 7.1.7 其他
- 7.2 文檔編輯類
- 7.2.1 col--過濾控制字符
- 7.2.2 colrm--濾掉指定的行
- 7.2.3 comm --比較兩個已排過序的文件
- 7.2.4 awk--一種處理文本文件的語言,是一個強大的文本分析工具
- 7.2.5 sed命令
- 7.3 文件傳輸類
- 7.3.1 prm--將一個工作由打印機貯列中移除
- 7.4 磁盤管理類
- 7.4.1 cd--切換當前工作目錄至 dirName(目錄參數)。
- 7.4.2 df--顯示目前在Linux系統上的文件系統的磁盤使用情況統計
- 7.4.3 dirs--顯示目錄記錄
- 7.4.5 du--顯示目錄或文件的大小
- 8 其他系統
- 8.1 Alpine Liunx
- 8.1.2 簡介
- 8.1.2 本地安裝
- 8.1.3 apk軟件包管理
- 8.1.4 配置ssh