arm开发板 移植SSH操作说明
2016-11-05 13:30
441 查看
源码下载:
新建文件夹:
编译:
注意在编译时要进入root权限,切记
cd /home/linux/workspace/arm/source
(1) 编译zlib:
修改Makefile:
CC=gcc 改为:
LDSHARED=gcc 改为:
CPP=gcc -E 改为:
AR=ar rc 改为:
开始编译:
(2) 编译openssl:
(3) 编译openssh:
注意:
这一步操作 不要make install
拷贝安装
注意一下文件要拷贝到特定文件下,如果你的开发板根文件系统中没有一下文件,那么需要你自己新建。
(1) 将 openssh-5.6p1目录下的 sshd 拷贝到 目标板的/usr/sbin目录下
(2) 再copy scp sftp ssh ssh-add ssh-agent ssh-keygen ssh-keyscan 到目标板/usr/local/bin目录下
copy sftp-server ssh-keysign 到/usr/local/libexec
(3) 在目标板下: mkdir -p /usr/local/etc/
然后将openssh下的sshd_config,ssh_config 拷贝到该目录下
mkdir -p /var/run; mkdir -p /var/empty/sshd
chmod 755 /var/empty
(4)在虚拟机/home/linux/workspace/arm/source/openssh-4.6p1路径下执行一下操作:
将生存的 ssh_host_* 6个文件copy到目标板的 /usr/local/etc/目录下(含有.pub文件)
这里有很重要的一件事要做,在你的开发板中执行一下命令:这一步如果没做SSH移植就无法成功,该步骤困扰我很长时间。
如果你没进行上述操作就会出现大量的如下图的错误
(5) 添加用户:
修改目标板根文件系统/etc目录下的 passwd 和group文件,添加上sshd用户和组,步骤如下:
//在文件末尾添加一下内容并保存退出:
(6)修改sshd_config文件如下选项,其他按默认配置:
4.测试
在开发板上 执行# /usr/sbin/sshd
设置系统上电自动启动SSHD
可以将/usr/sbin/sshd写入/etc/init.d/rcS中开机启动
以上就实现了SSH的移植,下面就可以使用SSH登陆开发板,也可以使用SSH client 进行文件传输。在这个过程中你也许会遇到SSH登陆缓慢的问题你可以尝试一下修改看是否能解决问题,对我来说一下方案没有效果
1、关闭DNS反向解析
在linux中,默认就是开启了SSH的反向DNS解析,这个会消耗大量时间,因此需要关闭。
在配置文件中,虽然UseDNS yes是被注释的,但默认开关就是yes
2、关闭SERVER上的GSS认证
在authentication gssapi-with-mic有很大的可能出现问题,因此关闭GSS认证可以提高ssh连接速度。
新建文件夹:
mkdir -p /home/linux/workspace/arm/source
下载zlib: zlib-1.2.8.tar.gz 下载ssl: openssl-0.9.8d.tar.gz 下载ssh: openssh-5.6p1.tar.gz
编译:
注意在编译时要进入root权限,切记
cd /home/linux/workspace/arm/source
(1) 编译zlib:
tar zxvf zlib-1.2.8.tar.gz cd zlib-1.2.8/ ./configure –prefix= /home/linux/workspace/arm/source/zlib-1.2.8
修改Makefile:
CC=gcc 改为:
CC=arm-Linux-gcc
LDSHARED=gcc 改为:
LDSHARED=arm-linux-gcc
CPP=gcc -E 改为:
CPP=$arm-linux-gcc -E
AR=ar rc 改为:
AR=arm-linux-ar rc
开始编译:
make make install
(2) 编译openssl:
tar zxvf openssl-0.9.8d.tar.gz
./Configure prefix= /home/linux/workspace/arm/source /openssl-0.9.8d os/compiler:arm-linux-gcc
make make install
(3) 编译openssh:
tar zxvf openssh-5.6p1.tar.gz cd openssh-5.6p1 ./configure –host=arm-linux –with-libs –with-zlib=/home/linux/workspace/arm/source/zlib-1.2.8 –with-ssl-dir=/home/linux/workspace/arm/source/openssl-0.9.8d –disable-etc-default-login CC=arm-linux-gcc AR=arm-linux-ar make
注意:
这一步操作 不要make install
拷贝安装
注意一下文件要拷贝到特定文件下,如果你的开发板根文件系统中没有一下文件,那么需要你自己新建。
(1) 将 openssh-5.6p1目录下的 sshd 拷贝到 目标板的/usr/sbin目录下
(2) 再copy scp sftp ssh ssh-add ssh-agent ssh-keygen ssh-keyscan 到目标板/usr/local/bin目录下
copy sftp-server ssh-keysign 到/usr/local/libexec
(3) 在目标板下: mkdir -p /usr/local/etc/
然后将openssh下的sshd_config,ssh_config 拷贝到该目录下
mkdir -p /var/run; mkdir -p /var/empty/sshd
chmod 755 /var/empty
(4)在虚拟机/home/linux/workspace/arm/source/openssh-4.6p1路径下执行一下操作:
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 “”
将生存的 ssh_host_* 6个文件copy到目标板的 /usr/local/etc/目录下(含有.pub文件)
这里有很重要的一件事要做,在你的开发板中执行一下命令:这一步如果没做SSH移植就无法成功,该步骤困扰我很长时间。
chmod 700 /usr/local/etc/*
如果你没进行上述操作就会出现大量的如下图的错误
(5) 添加用户:
修改目标板根文件系统/etc目录下的 passwd 和group文件,添加上sshd用户和组,步骤如下:
cd /etc vi passwd
//在文件末尾添加一下内容并保存退出:
sshd:*:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
vi group //添加 sshd:*:74:
(6)修改sshd_config文件如下选项,其他按默认配置:
# HostKey for protocol version 1 HostKey /usr/local/etc/ssh_host_key # HostKeys for protocol version 2 HostKey /usr/local/etc/ssh_host_rsa_key HostKey /usr/local/etc/ssh_host_dsa_key PermitRootLogin yes #――允许根用户登陆 PermitEmptyPasswords yes #――允许使用空密码,即不需要密码 UsePrivilegeSeparation no #――把安全级别降低,因为不会连接互联网 # override default of no subsystems Subsystem sftp /usr/local/libexec/sftp-server #――指定sftp服务路径,否则将不能启动sftp服务,将不能进行文件的上传和下载
4.测试
在开发板上 执行# /usr/sbin/sshd
设置系统上电自动启动SSHD
可以将/usr/sbin/sshd写入/etc/init.d/rcS中开机启动
以上就实现了SSH的移植,下面就可以使用SSH登陆开发板,也可以使用SSH client 进行文件传输。在这个过程中你也许会遇到SSH登陆缓慢的问题你可以尝试一下修改看是否能解决问题,对我来说一下方案没有效果
1、关闭DNS反向解析
在linux中,默认就是开启了SSH的反向DNS解析,这个会消耗大量时间,因此需要关闭。
# vi /etc/ssh/sshd_config UseDNS=no
在配置文件中,虽然UseDNS yes是被注释的,但默认开关就是yes
2、关闭SERVER上的GSS认证
在authentication gssapi-with-mic有很大的可能出现问题,因此关闭GSS认证可以提高ssh连接速度。
# vi /etc/ssh/sshd_config GSSAPIAuthentication no
相关文章推荐
- 移植SQL server数据库对象到Oracle的操作说明
- TX2440 ARM开发板Uboot移植(三、添加Nand Flash的有关操作支持)
- 移植SQL server数据库对象到Oracle的操作说明
- SSH/SSL 源码编译安装简易操作说明
- Linux中配置双机SSH信任 操作说明
- SSH Secure Shell-Secure Shell Client操作使用说明
- arm开发板-linux系统-ssh移植记录
- UBOOT 移植操作(1)
- SSH说明
- UBOOT 移植操作(2)
- java时间操作详细说明
- QuartusII命令行操作--如何建立可移植的工程
- 用一个留言簿说明C#操作XML的完全过程
- jQuery 中关于CSS操作部分使用说明
- UBOOT 移植操作(4)
- 2.6.14 内核移植说明文档
- JS 操作IE游览器常用函数使用说明
- 用一个留言簿说明C#操作XML的完全过程
- 整理javascript操作文件说明.
- windows远程ssh与scp操作linux