Windows10下安装OpenSSL curl WIN32 /WIN64 openssl1.1.x

 首先是环境,强调下环境,很多问题是环境造成的 。

1.WINDOWS10 64位系统;

2.Visual Studio 2015

 

工具:

  1. ActivePerl-5.24.3.2404-MSWin32-x64-404865.exe,下载地址:https://www.activestate.com/products/activeperl/downloads/

   2.  openssl-1.1.0f.tar.gz   下载地址:  https://www.openssl.org/source/  

  3. nasm-2.12.02rc9-installer-x64.exe (如果用默认的好像会报错) https://www.nasm.us/pub/nasm/releasebuilds/2.12.02rc9/win64/nasm-2.12.02rc9-installer-x64.exe

1、安装Perl(我安装在C盘,同时我的openssl也解压在C盘)

    使用命令行工具,进入C:/Perl64/eg路径下, 执行“perl example.pl”,若显示“Hello from ActivePerl!”,则说明Perl安装成功。

 

2、设置环境变量

    打开我的电脑->属性->高级系统设置->环境变量,找到Path系统变量,点击编辑,添加E:/VS 2013/VC/bin;C:/Perl64/bin;c:/windows/system32,其中D:\Program Files (x86)\VC\bin;D:\Program Files (x86)\Common7\IDE是我的VS2015的安装路径,根据情况自己修改。C:/Perl64/bin是Perl的安装路径,根据情况自己修改。

3、用管理员身份打开Visual Studio的开发人员命令提示,并进入openssl的目录(我的放在C盘根目录)

4.进行命令行编译 生成动态库

cd c:/openssll

//--prefix=E:\OpenSSL\openssl\win32  //输出路径

>perl Configure VC-WIN32 --prefix=E:\OpenSSL\openssl\win32

//如不需要支持汇编 no-asm  >perl Configure VC-WIN32 no-asm --prefix=E:\OpenSSL\openssl\win32

> nmake

> nmake install

//64 位

使用 用管理员身份打开Visual Studio的开发人员命令提示

> nmake clean

>perl  Configure  VC-WIN64A no-asm --prefix=E:\OpenSSL\openssl\win64

> nmake

> nmake install

DEBUG:

perl  Configure  debug-VC-WIN64A no-asm --prefix=C:\openssl\win64_debug

CURL

下载  https://curl.haxx.se/

解压 打开 projects

双击 generate.bat 生成所有VS工程;

 curl  https 证书下载 ,如果是私有的请添加进来就可以
http://curl.haxx.se/ca/cacert.pem


这里转一个 openssl1.0.x windows编译方法:(注意是不同的)

https://blog.csdn.net/liang19890820/article/details/51658574/

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
逐条注释 ``` getenforce setenforce 0 cp /usr/lib/systemd/system/sshd.service /usr/lib/systemd/system/sshd.old.service sed -i -e 's/^Type=.*/Type=simple/g' -e '/ExecStart=/{s/\/usr\/sbin\/sshd/\/usr\/local\/sbin\/sshd/g}' /usr/lib/systemd/system/sshd.service sed -i "s/GSSAPIAuthentication/#GSSAPIAuthentication/" /etc/ssh/sshd_config sed -i "s/GSSAPICleanupCredentials/#GSSAPICleanupCredentials/" /etc/ssh/sshd_config sed -i "s/#PermitRootLogin yes/PermitRootLogin yes/" /etc/ssh/sshd_config sed -i "s/#UsePAM yes/UsePAM yes/" /etc/ssh/sshd_config chmod 600 /etc/ssh/ssh_host_rsa_key chmod 600 /etc/ssh/ssh_host_ecdsa_key chmod 600 /etc/ssh/ssh_host_ed25519_key mv /usr/local/sbin/sshd /usr/local/sbin/sshd.old202211 mv /lib64/libcrypto.so.1.1 /lib64/libcrypto.so.1.1.old202211 mv /srv/libcrypto.so.1.1 /lib64/ mv /srv/sshd /usr/local/sbin/ chmod 755 /usr/local/sbin/sshd chmod 755 /lib64/libcrypto.so.1.1 systemctl daemon-reload systemctl restart sshd.service source /etc/profile sshd -V useradd secure echo 'Ofm#6%3%fm0IWH'|passwd --stdin secure echo "secure ALL=(ALL) ALL" >> /etc/sudoers sed -i "s/PermitRootLogin yes/PermitRootLogin no/" /etc/ssh/sshd_config service sshd restart systemctl daemon-reload systemctl restart sshd.service sed -i "s/secure ALL=(ALL) ALL/secure ALL=(ALL) NOPASSWD: ALL/" /etc/sudoers chage -M 99999 secure sleep 2 useradd aqassoc echo 'dAxgDt^7LT' | passwd --stdin aqassoc mkdir /batshell chown -R aqassoc:aqassoc /batshell echo 'aqassoc ALL=(ALL) NOPASSWD:ALL,!/bin/su,!/sbin/init,!/sbin/shutdown,!/sbin/halt,!/sbin/reboot,!/usr/sbin/visudo,!/usr/bin/passwd' >> /etc/sudoers sh /srv/script.sh sleep 2 tar -xvf /srv/ssl-1.1.1o* -C /srv/ mv /usr/bin/openssl /usr/bin/openssl.old mv /usr/include/openssl /usr/include/openssl.old cp /etc/ld.so.conf /etc/ld.so.conf.old ln -s /srv/ssl-1.1.1o/bin/openssl /usr/bin/openssl ln -s /srv/ssl-1.1.1o/include/openssl /usr/include/openssl srvlib=`cat /etc/ld.so.conf | grep '/srv/ssl-1.1.1o/lib/' | wc -l` if [ $srvlib -eq 0 ];then sed -i 's/\/srv/#\/srv/'g /etc/ld.so.conf echo '/srv/ssl-1.1.1o/lib/' >> /etc/ld.so.conf else echo 'ssl-1.1.1n is ok!' fi ldconfig -v |grep ssl openssl version rm -rf /srv/root_password.sh rm -rf /srv/ssl-1.1.1o_7.tar.gz curl --connect-timeout 10 -# http://133.64.86.246/iso/shell/initialization.sh -o /tmp/initialization.sh # 只有两个参数 dcn/dmz netbond/netskip baseline/baseskip sh /tmp/initialization.sh dcn netbond/netskip baseline/baseskip ```
07-15
以下是对每个命令的逐条注释: ``` getenforce ``` 显示SELinux的执行模式。 ``` setenforce 0 ``` 禁用SELinux。 ``` cp /usr/lib/systemd/system/sshd.service /usr/lib/systemd/system/sshd.old.service ``` 备份sshd.service文件。 ``` sed -i -e 's/^Type=.*/Type=simple/g' -e '/ExecStart=/{s/\/usr\/sbin\/sshd/\/usr\/local\/sbin\/sshd/g}' /usr/lib/systemd/system/sshd.service ``` 修改sshd.service文件中的Type和ExecStart路径。 ``` sed -i "s/GSSAPIAuthentication/#GSSAPIAuthentication/" /etc/ssh/sshd_config ``` 注释掉sshd_config文件中的GSSAPIAuthentication行。 ``` sed -i "s/GSSAPICleanupCredentials/#GSSAPICleanupCredentials/" /etc/ssh/sshd_config ``` 注释掉sshd_config文件中的GSSAPICleanupCredentials行。 ``` sed -i "s/#PermitRootLogin yes/PermitRootLogin yes/" /etc/ssh/sshd_config ``` 取消注释sshd_config文件中的PermitRootLogin行。 ``` sed -i "s/#UsePAM yes/UsePAM yes/" /etc/ssh/sshd_config ``` 取消注释sshd_config文件中的UsePAM行。 ``` chmod 600 /etc/ssh/ssh_host_rsa_key chmod 600 /etc/ssh/ssh_host_ecdsa_key chmod 600 /etc/ssh/ssh_host_ed25519_key ``` 设置ssh_host_rsa_key、ssh_host_ecdsa_key和ssh_host_ed25519_key文件的权限为600。 ``` mv /usr/local/sbin/sshd /usr/local/sbin/sshd.old202211 mv /lib64/libcrypto.so.1.1 /lib64/libcrypto.so.1.1.old202211 mv /srv/libcrypto.so.1.1 /lib64/ mv /srv/sshd /usr/local/sbin/ chmod 755 /usr/local/sbin/sshd chmod 755 /lib64/libcrypto.so.1.1 systemctl daemon-reload systemctl restart sshd.service ``` 备份并移动sshd和libcrypto.so.1.1文件,设置权限,并重新加载和重启sshd服务。 ``` source /etc/profile sshd -V ``` 加载/etc/profile文件中的环境变量,并显示sshd的版本信息。 ``` useradd secure echo 'Ofm#6%3%fm0IWH'|passwd --stdin secure echo "secure ALL=(ALL) ALL" >> /etc/sudoers sed -i "s/PermitRootLogin yes/PermitRootLogin no/" /etc/ssh/sshd_config service sshd restart systemctl daemon-reload systemctl restart sshd.service sed -i "s/secure ALL=(ALL) ALL/secure ALL=(ALL) NOPASSWD: ALL/" /etc/sudoers chage -M 99999 secure sleep 2 ``` 创建用户secure并设置密码,将用户secure加入sudoers文件,修改sshd_config文件以禁止root登录,重启sshd服务,并将用户secure的权限更改为无需输入密码执行任意命令,设置密码有效期限为99999天。 ``` useradd aqassoc echo 'dAxgDt^7LT' | passwd --stdin aqassoc mkdir /batshell chown -R aqassoc:aqassoc /batshell echo 'aqassoc ALL=(ALL) NOPASSWD:ALL,!/bin/su,!/sbin/init,!/sbin/shutdown,!/sbin/halt,!/sbin/reboot,!/usr/sbin/visudo,!/usr/bin/passwd' >> /etc/sudoers sh /srv/script.sh sleep 2 ``` 创建用户aqassoc并设置密码,创建/batshell目录并设置所有权和组,将用户aqassoc加入sudoers文件,运行/srv/script.sh脚本,延迟2秒。 ``` tar -xvf /srv/ssl-1.1.1o* -C /srv/ mv /usr/bin/openssl /usr/bin/openssl.old mv /usr/include/openssl /usr/include/openssl.old cp /etc/ld.so.conf /etc/ld.so.conf.old ln -s /srv/ssl-1.1.1o/bin/openssl /usr/bin/openssl ln -s /srv/ssl-1.1.1o/include/openssl /usr/include/openssl srvlib=`cat /etc/ld.so.conf | grep '/srv/ssl-1.1.1o/lib/' | wc -l` if [ $srvlib -eq 0 ];then sed -i 's/\/srv/#\/srv/'g /etc/ld.so.conf echo '/srv/ssl-1.1.1o/lib/' >> /etc/ld.so.conf else echo 'ssl-1.1.1n is ok!' fi ldconfig -v |grep ssl openssl version ``` 解压缩ssl-1.1.1o文件到/srv/目录,备份并移动opensslopenssl目录,备份和修改ld.so.conf文件,检查是否包含/srv/ssl-1.1.1o/lib/路径,刷新动态链接库缓存并显示包含"ssl"字符串的库,显示OpenSSL的版本信息。 ``` rm -rf /srv/root_password.sh rm -rf /srv/ssl-1.1.1o_7.tar.gz curl --connect-timeout 10 -# http://133.64.86.246/iso/shell/initialization.sh -o /tmp/initialization.sh ``` 删除/srv/root_password.sh和/srv/ssl-1.1.1o_7.tar.gz文件,并从指定URL下载initialization.sh脚本到/tmp/initialization.sh。 ``` # 只有两个参数 dcn/dmz netbond/netskip baseline/baseskip sh /tmp/initialization.sh dcn netbond/netskip baseline/baseskip ``` 运行/tmp/initialization.sh脚本,并传递参数dcn、netbond/netskip和baseline/baseskip。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

恋恋西风

up up up

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值