日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > linux >内容正文

linux

openssh arm linux 编译,openssh编译安装到ARM嵌入式系统中

發(fā)布時(shí)間:2023/12/2 linux 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 openssh arm linux 编译,openssh编译安装到ARM嵌入式系统中 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

目錄

一.SSHD編譯(此步驟在虛擬機(jī)上執(zhí)行)

1.1 在/root/目錄下創(chuàng)建ssh目錄

1.2 交叉編譯zlib

1.3交叉編譯openssl

1.4交叉編譯openssh

二.移植(此步驟在開(kāi)發(fā)板上執(zhí)行)

2.1 在開(kāi)發(fā)板上建立需要的目錄

2.2 下面是在開(kāi)發(fā)板上操作

2.3修改sshd_config

三、加入自啟動(dòng)腳本

參考:

注:如果想自行編譯移植,即可從第一步開(kāi)始;若已有sshd 、sftp-server、密鑰等文件則直接進(jìn)行第二個(gè)步驟;相關(guān)源碼及編譯后的文件在附件中可見(jiàn)。

一.SSHD編譯(此步驟在虛擬機(jī)上執(zhí)行)

源碼包:zlib-1.2.3.tar.bz2

openssl-0.9.81.tar.gz

openssh-4.6p1.tar.gz

說(shuō)明:本次只移植SSH的服務(wù)端,客戶(hù)端相關(guān)程序和配置文件不拷貝到開(kāi)發(fā)板。

1.1 在/root/目錄下創(chuàng)建ssh目錄

#mkdir /root/ssh

#cd /root/ssh

#mkdir compressed install source注:compressed用于存放源碼包

install軟件安裝目錄

source源碼包解壓目錄

將三個(gè)源碼包拷貝到compressed目錄下。

1.2交叉編譯zlib

# tar -jxvf zlib-1.2.3.tar.bz2? -C? ../source

# cd ../source/zlib-1.2.3

# ./configure --prefix=/root/ssh/install/zlib-1.2.3

# vi Makefile?????? //修改Makefile中的某些變量值,指定自己的交叉編譯工具

CC=arm-linux-gnueabihf-gcc

CPP=arm-linux-gnueabihf-gcc -E

AR=arm-linux-gnueabihf-ar rc

LDSHARED=arm-linux-gnueabihf-gcc

保存退出執(zhí)行make

make install

1.3交叉編譯openssl

# cd /root/ssh/compressed/

# tar -zxvf openssl-0.9.81.tar.gz? -C? ../source

# cd ../source/openssl-0.9.81

#./Configure? --prefix=/root/ssh/install/openssl-0.9.81? os/compiler:arm-linux-gnueabihf-gcc

執(zhí)行make(如果遇到錯(cuò)誤輸入rm -f /usr/bin/pod2man)

make install(如果遇到錯(cuò)誤輸入rm -f /usr/bin/pod2man)

1.4交叉編譯openssh

# cd /root/ssh/compressed

# tar -zxvf openssh-4.6p1.tar.gz? -C ../source

# cd ../source/openssh-4.6p1

#./configure --host=arm-linux-gnueabihf --with-libs???????????????????????????????? --with-zlib=/root/ssh/install/zlib-1.2.3/ --with-ssl-dir=/root/ssh/install/openssl-0.9.81 --disable-etc-default-login CC=arm-linux-gnueabihf-gcc AR=arm-linux-gnueabihf-ar

#make注:不要make install

這時(shí)在/root/ssh/source/ openssh-4.6p1/目錄下生成了sshd、sftp-server、密鑰等文件。

可以用strip工具把sshd體積變小,以節(jié)省空間,操作如下:

#arm-linux-gnueabihf-strip -s sshd

還需要建立密鑰(用ssh-keygen工具):

#ssh-keygen -t rsa1 -f ssh_host_key -N ""

#ssh-keygen -t rsa -f ssh_host_rsa_key -N ""

#ssh-keygen -t dsa -f ssh_host_dsa_key -N ""

會(huì)生成這六個(gè)密鑰文件:

ssh_host_dsa_key

ssh_host_dsa_key.pub

ssh_host_key

ssh_host_key.pub

ssh_host_rsa_key

ssh_host_rsa_key.pub

二.移植(此步驟在開(kāi)發(fā)板上執(zhí)行)

2.1 在開(kāi)發(fā)板上建立需要的目錄

#mkdir -p /usr/local/etc

#mkdir -p /var/run /var/empty/sshd? 并設(shè)定權(quán)限chmod 755 /var/empty

把在虛擬機(jī)下 /root/ssh/source/openssh-4.6p1生成的服務(wù)端相關(guān)文件拷貝到開(kāi)發(fā)板相應(yīng)目錄下:

sshd和 sftp-server復(fù)制到開(kāi)發(fā)板的/sbin/目錄下

生成的六個(gè)密鑰文件和sshd_config復(fù)制到/usr/local/etc/目錄下

進(jìn)入/usr/local/etc/目錄下,修改權(quán)限:

# chmod 0644 *

# chmod 0600 ssh_host_dsa_key? ssh_host_key? ssh_host_rsa_key

2.2 下面是在開(kāi)發(fā)板上操作

修改/etc/目錄下的passwd和group文件,添加sshd用戶(hù)和組

#vi /etc/passwd

在最后一行添加sshd:*:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

保存退出。

#vi /etc/group

在最后一行添加sshd:*:74:

保存退出。

2.3修改sshd_config

分別去掉下列語(yǔ)句前的注釋號(hào)(即去掉#號(hào))并修改為:

PermitRootLogin????yes―――――允許根用戶(hù)登陸

PermitEmptyPasswords?yes――――允許使用空密碼

UsePrivilegeSeparation???no――――把安全級(jí)別降低,因?yàn)椴粫?huì)連接互聯(lián)網(wǎng)

同時(shí)修改sftp-server的存放路徑為 /sbin/sftp-server

運(yùn)行sshd時(shí)要用絕對(duì)路徑

#/sbin/sshd

這樣可以在windows下用ssh客戶(hù)端進(jìn)行連接了。

三、加入自啟動(dòng)腳本

/etc/init.d目錄下新建sshd文件

#! /bin/sh

sshd=/sbin/sshd

test -x "$sshd" || exit 0

case "$1" in

start)

echo -n "Starting sshd daemon"

start-stop-daemon --start --quiet --exec $sshd -b

echo "."

;;

stop)

echo -n "Stopping sshd"

start-stop-daemon --stop --quiet --exec $sshd

echo "."

;;

restart)

echo -n "Stopping sshd"

start-stop-daemon --stop --quiet --exec $sshd

echo "."

echo -n "Waiting for sshd to die off"

for i in 1 2 3 ;

do

sleep 1

echo -n "."

done

echo ""

echo -n "Starting sshd daemon"

start-stop-daemon --start --quiet --exec $sshd -b

echo "."

;;

*)

echo "Usage: /etc/init.d/sshd {start|stop|restart}"

exit 1

esac

exit 0

進(jìn)入/etc/init.d目錄執(zhí)行命令

cd /etc/init.d

ln -sf ../init.d/sshd ../rc5.d/S30sshd

ln -sf ../init.d/sshd ../rc3.d/S30sshd

即可實(shí)現(xiàn)開(kāi)機(jī)自動(dòng)啟動(dòng)sshd服務(wù)。

源碼下載:?https://download.csdn.net/download/v6543210/10746939

參考:

1.Linux嵌入式學(xué)習(xí)-交叉編譯openssl

https://www.cnblogs.com/ynxf/p/6375091.html

linux系統(tǒng)的7種運(yùn)行級(jí)別

https://blog.csdn.net/ccfxue/article/details/52767863

/etc/rc.d/init.d自啟動(dòng)程序說(shuō)明

https://blog.csdn.net/xysoul/article/details/44956525

總結(jié)

以上是生活随笔為你收集整理的openssh arm linux 编译,openssh编译安装到ARM嵌入式系统中的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。