0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

開發(fā)板openssh移植步驟

啟揚(yáng)ARM嵌入式開發(fā) ? 2022-09-05 11:23 ? 次閱讀

SSH簡介

SSH 為 Secure Shell 的縮寫,由 IETF 的網(wǎng)絡(luò)小組(Network Working Group)所制定,為建立在應(yīng)用層基礎(chǔ)上的安全協(xié)議。通過對(duì)密碼進(jìn)行加密傳輸驗(yàn)證,可在不安全的網(wǎng)絡(luò)中對(duì)網(wǎng)絡(luò)服務(wù)提供安全的傳輸環(huán)境,實(shí)現(xiàn)ssh客戶端和ssh服務(wù)器端的連接。在Linux類的設(shè)備或相關(guān)設(shè)置中,要實(shí)現(xiàn)修改網(wǎng)絡(luò)、遠(yuǎn)程控制之類的操作,幾乎都會(huì)涉及到SSH操作。

OpenSSH 是 SSH (Secure SHell) 協(xié)議的免費(fèi)開源實(shí)現(xiàn),提供了服務(wù)端后臺(tái)程序和客戶端工具,用來加密遠(yuǎn)程控制和文件傳輸過程中的數(shù)據(jù)。

開發(fā)板SSH服務(wù)移植

openssh依賴于zlib庫和openssl庫,所以安裝openssh需要安裝編譯三個(gè)組件,分別為zlib、openssl和openssh。

#下載地址

zlib:http://www.zlib.net/

openssl:https://www.openssl.org/source/

openssh:https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/

zlib編譯

1.下載zlib庫

wget http://www.zlib.net/zlib-1.2.12.tar.gz

2.解壓zlib庫

tar -zxf zlib-1.2.12.tar.gz

3.編譯zlib

首先新建一個(gè)文件夾來存放編譯結(jié)果

mkdir zlib

進(jìn)入zlib源碼目錄,配置編譯器選項(xiàng),例如:

export CC=arm-linux-gnueabihf-gcc
export LD=arm-linux-gnueabihf-ld
export AD=arm-linux-gnueabihf-as

配置編譯路徑

./configure --prefix=/home/qiyang/imx6ull/openssh/zlib

此時(shí)生成一個(gè)Makefile文件,我們需要修改Makefile指定與路徑無關(guān),在如圖所示位置添加-fPIC

701e2644-2ad9-11ed-9ade-dac502259ad0.png

最后執(zhí)行make && make install命令,進(jìn)行編譯安裝;并將編譯出來的結(jié)果拷貝到開發(fā)板的/lib目錄下。

openssl編譯

1.下載openssl

wget https://www.openssl.org/source/openssl-3.0.2.tar.gz

2.解壓openssl庫

tar -zxf openssl-3.0.2.tar.gz

3.編譯openssl

首先建立一個(gè)文件夾存放編譯結(jié)果

mkdir openssl

配置編譯器

export CROSS_COMPILE=arm-linux-gnueabihf-

配置編譯路徑

./Configure linux-armv4 shared no-asm --prefix=/home/qiyang/imx6ull/openssh/openssl

最后執(zhí)行make && make install命令,進(jìn)行編譯安裝;并將編譯出來的結(jié)果拷貝到開發(fā)板的/lib目錄下。

openssh編譯

1.下載openssh

wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.9p1.tar.gz

2.解壓

tar -zxf openssh-8.9.tar.gz

3.編譯openssh

配置

./configure --host=arm-linux-gnueabihf --with-libs --with-zlib=/home/qiyang/imx6ull/openssh/zlib --with-ssl-dir=/home/qiyang/imx6ull/openssh/openssl --disable-etcdefault-login CC=arm-linux-gnueabihf-gcc AR=arm-linux-gnueabihf-ar

最后make,配置編譯器和zlib、openssl庫的目錄。

4.安裝

首先在開發(fā)板上創(chuàng)建以下目錄

mkdir -p /usr/local/bin
mkdir -p /usr/local/sbin
mkdir -p /usr/local/libexec/
mkdir -p /usr/local/etc
mkdir -p /var/run
mkdir -p /var/empty/

將編譯完成的文件分別復(fù)制到開發(fā)板目錄下。

將scp、sftp、ssh、ssh-add、ssh-agent、ssh-keygen、ssh-keyscan復(fù)制到/usr/local/bin目錄下;

將sshd復(fù)制到/usr/local/sbin目錄下;

將moduli、ssh_config、sshd_config復(fù)制到/usr/local/etc目錄下;

將sftp-server、ssh-keysign復(fù)制到 /usr/local/libexec目錄下;

5.修改passwd

在/etc/passwd 中添加下面這一行

sshd:x:74:74:Privilege-separatedSSH:/var/empty/sshd:/sbin/nologin

6.生成密鑰

在/usr/local/etc/目錄下,使用如下命令生成密鑰

ssh-keygen -t rsa -f ssh_host_rsa_key -N ""
ssh-keygen -t dsa -f ssh_host_dsa_key -N ""
ssh-keygen -t ecdsa -f ssh_host_ecdsa_key -N ""
ssh-keygen -t ed25519 -f ssh_host_ed25519_key -N ""

需要給ssh和sshd添加可執(zhí)行權(quán)限,

ssh在root/usr/local/bin目錄下

chmod +x ssh

sshd在/usr/local/sbin/目錄下

chmod +x sshd

7.修改/usr/local/etc/sshd_config文件內(nèi)容

1.將PasswordAuthentication yes前的注釋#去掉;

2.將#PermitRootLogin yes前的注釋#去掉;

3.將#PermitEmptyPasswords no 修改為PermitEmptyPasswords yes

8.開啟ssh服務(wù)

7047d408-2ad9-11ed-9ade-dac502259ad0.png

如上所示執(zhí)行即可開啟sshd服務(wù),使用ps命令可以看到該進(jìn)程在運(yùn)行

705af556-2ad9-11ed-9ade-dac502259ad0.png

通過上述操作,openssh服務(wù)已經(jīng)在開發(fā)板上移植好了,此時(shí)使用電腦上的ssh工具就可以連接到開發(fā)板了。

706fa0d2-2ad9-11ed-9ade-dac502259ad0.png

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5301

    瀏覽量

    100295
收藏 0人收藏

    評(píng)論

    相關(guān)推薦

    ElfBoard技術(shù)貼|如何在ELF 1開發(fā)板上交叉移植Qt

    在嵌入式系統(tǒng)開發(fā)領(lǐng)域,針對(duì)特定硬件平臺(tái)進(jìn)行Qt框架的移植與適配是一項(xiàng)關(guān)鍵技術(shù)任務(wù)。作為業(yè)界主流的跨平臺(tái)應(yīng)用開發(fā)框架,Qt憑借其完善的圖形界面支持能力,在嵌入式開發(fā)圖形界面應(yīng)用程序中占據(jù)
    的頭像 發(fā)表于 02-24 16:18 ?385次閱讀
    ElfBoard技術(shù)貼|如何在ELF 1<b class='flag-5'>開發(fā)板</b>上交叉<b class='flag-5'>移植</b>Qt

    【迅為】瑞芯微RK3588開發(fā)板RK3568開發(fā)板區(qū)別及優(yōu)勢(shì)

    RK3568開發(fā)板
    的頭像 發(fā)表于 11-18 14:19 ?1043次閱讀
    【迅為】瑞芯微RK3588<b class='flag-5'>開發(fā)板</b>RK3568<b class='flag-5'>開發(fā)板</b>區(qū)別及優(yōu)勢(shì)

    【RA8D1試用活動(dòng)】RA8D1B-CPKCOR開發(fā)板移植linux

    【RA8D1試用活動(dòng)】RA8D1B-CPKCOR開發(fā)板移植linux
    的頭像 發(fā)表于 11-16 01:02 ?567次閱讀
    【RA8D1試用活動(dòng)】RA8D1B-CPKCOR<b class='flag-5'>開發(fā)板</b><b class='flag-5'>移植</b>linux

    基于哪吒開發(fā)板部署YOLOv8模型

    2024英特爾 “走近開發(fā)者”互動(dòng)活動(dòng)-哪吒開發(fā)套件免費(fèi)試 用 AI 創(chuàng)新計(jì)劃:哪吒開發(fā)板是專為支持入門級(jí)邊緣 AI 應(yīng)用程序和設(shè)備而設(shè)計(jì),能夠滿足人工智能學(xué)習(xí)、開發(fā)、實(shí)訓(xùn)等應(yīng)用場(chǎng)景。
    的頭像 發(fā)表于 11-15 14:13 ?792次閱讀
    基于哪吒<b class='flag-5'>開發(fā)板</b>部署YOLOv8模型

    正點(diǎn)原子fpga開發(fā)板不同型號(hào)

    正點(diǎn)原子作為國內(nèi)領(lǐng)先的FPGA開發(fā)板供應(yīng)商,其產(chǎn)品線覆蓋了從入門級(jí)到高端應(yīng)用的各個(gè)領(lǐng)域。這些開發(fā)板不僅適用于學(xué)術(shù)研究,還廣泛應(yīng)用于工業(yè)控制、通信、圖像處理等多個(gè)領(lǐng)域。 1. 入門級(jí)開發(fā)板 1.1
    的頭像 發(fā)表于 11-13 09:30 ?2573次閱讀

    51開發(fā)板芯片資料

    51開發(fā)板芯片資料
    發(fā)表于 09-18 09:29 ?1次下載

    樹莓派和arm開發(fā)板的區(qū)別

    樹莓派(Raspberry Pi)和ARM開發(fā)板都是基于ARM架構(gòu)的微型計(jì)算機(jī),但它們之間存在一些關(guān)鍵區(qū)別。 一、歷史背景 樹莓派(Raspberry Pi) 樹莓派是由英國樹莓派基金會(huì)
    的頭像 發(fā)表于 08-30 15:36 ?1596次閱讀

    linux開發(fā)板與樹莓派的區(qū)別

    定義和用途 Linux開發(fā)板:Linux開發(fā)板是一種基于Linux操作系統(tǒng)的嵌入式開發(fā)板,通常用于工業(yè)自動(dòng)化、物聯(lián)網(wǎng)、智能家居等領(lǐng)域。 樹莓派:樹莓派(Raspberry Pi)是一種基于Linux
    的頭像 發(fā)表于 08-30 15:34 ?1492次閱讀

    linux開發(fā)板如何編譯curl

    在Linux開發(fā)板上編譯 curl 庫通常涉及到幾個(gè)步驟,包括準(zhǔn)備開發(fā)環(huán)境、下載源代碼、配置編譯選項(xiàng)以及執(zhí)行編譯和安裝過程。以下是一個(gè)基本的指南,幫助你在Linux開發(fā)板上編譯 cur
    的頭像 發(fā)表于 08-30 15:33 ?1046次閱讀

    linux開發(fā)板和單片機(jī)開發(fā)的區(qū)別

    硬件架構(gòu) Linux開發(fā)板和單片機(jī)開發(fā)在硬件架構(gòu)上有很大的區(qū)別。Linux開發(fā)板通?;贏RM、x86或其他處理器架構(gòu),具有較高的處理能力和內(nèi)存容量。而單片機(jī)開發(fā)則基于微控制器,如80
    的頭像 發(fā)表于 08-30 15:30 ?1674次閱讀

    HZ-CORE-RK3576開發(fā)板

    HZ-CORE-RK3576開發(fā)板
    的頭像 發(fā)表于 08-29 13:58 ?489次閱讀
    HZ-CORE-RK3576<b class='flag-5'>開發(fā)板</b>

    第2章_開發(fā)板使用

    本課程使用 ST-Link 給開發(fā)板供電、燒錄、調(diào)試。
    的頭像 發(fā)表于 06-29 14:25 ?3362次閱讀
    第2章_<b class='flag-5'>開發(fā)板</b>使用

    米爾基于NXP iMX.93開發(fā)板的M33處理器應(yīng)用開發(fā)筆記

    資源MYD-LMX9X開發(fā)板(米爾基于NXPiMX.93開發(fā)板)3.軟件資源Windows7及以上版本軟件:IAREmbeddedWorkbench4.板載固件調(diào)試
    的頭像 發(fā)表于 06-29 08:01 ?1804次閱讀
    米爾基于NXP iMX.93<b class='flag-5'>開發(fā)板</b>的M33處理器應(yīng)用<b class='flag-5'>開發(fā)</b>筆記

    RK3568開發(fā)板支持AMP雙系統(tǒng)

    RK3568開發(fā)板支持AMP雙系統(tǒng)
    的頭像 發(fā)表于 06-04 15:33 ?973次閱讀
    RK3568<b class='flag-5'>開發(fā)板</b>支持AMP雙系統(tǒng)

    鴻蒙OpenHarmony開發(fā)板解析:【芯片解決方案】

    芯片解決方案是指基于某款開發(fā)板的完整解決方案,包含驅(qū)動(dòng)、設(shè)備側(cè)接口適配、開發(fā)板sdk等。
    的頭像 發(fā)表于 05-10 15:42 ?1479次閱讀
    鴻蒙OpenHarmony<b class='flag-5'>開發(fā)板</b>解析:【芯片解決方案】

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品