前置文章:
源码下载
官网:http://www.openssh.com/
下载了一个很新的版本
ftp://mirrors.sonic.net/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz
解压文件:
tar zxvf openssh-9.8p1.tar.gz
编译脚本:
本脚本实现了sshd能够工作的最基本配置:
1 编译sshd
2 对busybox生成的根文件系统的基本目录创建和文件创建
3 创建一个rsa秘钥对,此秘钥对提前在开发板上创建的
4 对sshd基本配置文件的创建,目的是解除对root用户ssh登录的限制
使用方式:
1 文件命名为build.sh,执行编译
2 文件命名为port.sh,执行移植操作,前提是要有对应的根文件系统
3 也可以创建一个连接,ln -s build.sh port.sh,执行这个链接也可达到只执行移植的目的
#!/bin/bash
set -e
export PATH=/usr/local/arm/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin:$PATH
install_path=`pwd`/install_arm
local_rootfs_path=/home/lkmao/nfsroot/myrootfs
zlibpath_relative_position="../../dropbear/zlib-1.3.1/install_arm/"
opensslpath_relative_position="../openssl-3.2.3/install_arm/"
opensslpath=""
zlibpath=""
cur_dir=`pwd`
SUDO=""
function build_openssl() {
if [ -d "$1" ];then
echo "install_path=$1 exists"
else
mkdir -p $1
echo "create path $1 exists"
fi
echo `pwd`
#exit 0
./configure --host=arm-linux-gnueabihf \
--with-libs \
--with-zlib=$zlibpath \
--with-ssl-dir=$opensslpath \
--disable-etc-default-login \
CC=arm-linux-gnueabihf-gcc \
AR=arm-linux-gnueabihf-ar
#--prefix=$1
make
ls -lsh scp sftp ssh ssh-add ssh-agent ssh-keygen ssh-keyscan