ssl證書 嵌入式裝置 嵌入式裝置支援https

2021-10-12 14:13:10 字數 3545 閱讀 9842

2. openssl-1.0.1i.tar.gz

一、一般編譯(沒有ssl支援)

1.配置如下:

2.把它複製到開發板/usr/sbin目錄

然後複製下列檔案

3.放置網頁檔案:

4.測試:

default:2 main  --------------------------------------------

default:2 main  host:               localhost

default:2 main  cpu:                arm

default:2 main  os:                 linux

default:2 main  distribution:       unknown unknown

default:2 main  os:                 linux

default:2 main  version:            2.4.2.2

default:2 main  buildtype:          debug

default:2 main  started at:         thu jan  1 00:03:44 1970

default:2 main  log rotation count: 0

default:2 main  --------------------------------------------

default:2 main  configuration via command line

測試應該指定配置檔案,這和在linux box上不同(好像在pc機上也要指定):

default:1 main  error: bad group name: nobody

default:1 main  error: missing an ssl provider

default:1 main  error: missing sslengine directive

default:1 main  error: missing sslengine directive

default:1 main  error: missing sslengine directive

default:1 main  error: missing sslengine directive

出現這些錯誤是因為編譯時的配置問題,大致是可以執行了,在瀏覽器中輸入:就可以訪問了。

基本上是可以使用了,如果訪問的頁面不存在,在終端會有相應的提示。針對上面的錯誤提示,以後再弄。

另外編譯各個檔案時會有-mcpu=arm7tdmi這個選項,在網上也沒有找到,但不影響執行。

三、openssl的支援:

相關:在這裡openssl目錄是我編譯好openssl後安裝到的目錄,如果要生成動態庫的話就要修改openssl-0.9.8a目錄中的makefile第18行為:18:shlib_target=linux-shared,然後

make && make build-shared  就會生成相應的動態庫檔案

61#$(bld_mod_dir)/libcrypto$(bld_shlib): $(bld_openssl_dir)/libcrypto$(bld_shlib)

62# cp $(bld_openssl_dir)/libcrypto*$(bld_shlib) $(bld_mod_dir)

63# chmod 755 $(bld_mod_dir)/libcrypto*$(bld_shlib)

64# @if [ "$(bld_host_os)" = "linux" -a -f /etc/redhat-release -a -x /usr/bin/chcon ] ; then \

65#  if [ "`sestatus | grep enabled`" != "" ]  ; then \

66#   echo chcon /usr/bin/chcon -t texrel_shlib_t $(bld_mod_dir)/libcrypto.so; \

67#   priv chcon /usr/bin/chcon -t texrel_shlib_t $(bld_mod_dir)/libcrypto.so; \

68#  fi ; \

69# fi

70# [ -x /sbin/ldconfig ] && ldconfig -n $(bld_mod_dir) ; true

72#$(bld_mod_dir)/libssl$(bld_shlib): $(bld_openssl_dir)/libssl$(bld_shlib)

73# cp $(bld_openssl_dir)/libssl*$(bld_shlib) $(bld_mod_dir)

74# chmod 755 $(bld_mod_dir)/libssl*$(bld_shlib)

75# @if [ "$(bld_host_os)" = "linux" -a -f /etc/redhat-release -a -x /usr/bin/chcon ] ; \

76# then \

77#  if [ "`sestatus | grep enabled`" != "" ] ; then \

78#   echo chcon /usr/bin/chcon -t texrel_shlib_t $(bld_mod_dir)/libssl.so; \

79#   priv chcon /usr/bin/chcon -t texrel_shlib_t $(bld_mod_dir)/libssl.so; \

80#  fi ; \

81# fi

82# [ -x /sbin/ldconfig ] && ldconfig -n $(bld_mod_dir) ; true

endif

2.新增openssl時所需選項如下:

openssl.ca    response.server  server.key.pem

groups.dist   openssl.conf  server.crt

我也不知道都需要哪些,就都放到這裡了,有空可以試一下。

另外預設情況下編譯成debug模式如果要用在產品中還要新增如下選項:--type=release

1.openssl移植配置選項

2.編譯錯誤解決

the error is

in function 『ssl_ctx* initserverctx()』:

serverssl.cpp:56:34: error: invalid conversion from 『const ssl_method* 』 to 『ssl_method* 』 [-fpermissive]

method = sslv3_server_method(); /* create new server-method instance */

use const ssl_method *method; instead of ssl_method *method;

什麼是嵌入式裝置? 嵌入式裝置的定義

區別於通用計算機的其他裝置都可以稱之為嵌入式裝置 個人電腦,伺服器 一段時期內,必備的硬體配置。底層驅動開發 關鍵字 bsp 嵌入式linux wince vxworks 上層應用開發 關鍵字 posix jd以嵌入式linux系統開發為例 熟悉常見外設,匯流排的linux驅動開發 微控制器,m3,...

嵌入式裝置抓包

1.通過hub 集線器 來抓包。可能交換機不可以 路由器和集線器的區別 路由器接受到某一埠發來的資料報的時候,它是定向傳遞給目標的 hub則採用廣播機制,只要收到資料,既向所有埠傳送廣播很明顯,hub就很容易抓包了,當然效能和效率比不上路由器。2.嵌入式網路中的抓包神器 我們在開發網路程式設計和研究...

嵌入式linux字元裝置驅動

arm linux 驅動 抵岸科技 1.我們需要先呼叫register chrdev region 或 alloc chrdev region 來向系統申請裝置號 int register chrdev region dev t first,unsigned int count,char name ...