1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 华为服务器(鲲鹏)aarch64/arm64架构下编译nmap RPM包

华为服务器(鲲鹏)aarch64/arm64架构下编译nmap RPM包

时间:2019-12-31 23:38:54

相关推荐

华为服务器(鲲鹏)aarch64/arm64架构下编译nmap RPM包

目录

安装rpmbuild

创建工作目录

安装编译环境

安装nmap依赖包

编辑Spec文件

编译nmap RPM包

验证RPM可用性

安装rpmbuild

yum -y install rpm-build

创建工作目录

# 使用rpmdev-setuptree命令创建编译目录yum -y install rpmdevtoolsrpmdev-setuptree #默认将再当前用户主目录下创建一个RPM构建根目录结构# 或手动创建mkdir -pv ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}

安装编译环境

yum install gcc gcc-c++ openssl-devel libtool -y

安装nmap依赖包

yum install flex bison byacc libpcap libpcap-devel -y

编辑Spec文件

cd /home/liuyl/rpmbuild

touch SPECS/ultra-nmap.spec

参考:/nmap-releases/nmap-7.90/nmap.spec.in

%define _topdir /home/liuyl/rpmbuild%define _prefix /usr/local%define _bindir /usr/local/bin%define _datadir /usr/local/shareName: ultra-nmap Version: 7.91Release: 1%{?dist}Summary: Network exploration tool and security scannerLicense: GPLv2URL: Source0: %{name}-%{version}.tar.bz2Group: Applications/SystemVendor: Prefix: %{_prefix}BuildRoot: %{_topdir}/BUILDROOT/%{name}-%{version}-%{release}%{?dist}.%{_arch}%descriptionNmap ("Network Mapper") is a free and open source utility for network exploration or security auditing. Many systems and networkadministrators also find it useful for tasks such as network inventory, managing service upgrade schedules, and monitoring host or service uptime. Nmap uses raw IP packets in novel ways to determine what hosts are available on the network, what services (application name and version) those hosts are offering, what operating systems (and OS versions) they are running, what type of packet filters/firewalls are in use, and dozens of other characteristics. It was designed to rapidly scan large networks, but works fine against single hosts. Nmap runs on all major computer operating systems, and both console and graphical versions are available.%prep%setup -q%build./configure --prefix=%{_prefix} --without-zenmap --without-nping --without-ncat --with-localdirs make %{?_smp_mflags} DESTDIR=$RPM_BUILD_ROOT%install[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOTmake install DESTDIR=$RPM_BUILD_ROOT%clean[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT%files%defattr(-,root,root)%doc LICENSE%doc docs/README%doc docs/nmap.usage.txt%doc %{_prefix}/share/man/man1/nmap.1%doc %{_prefix}/share/man/*/man1/nmap.1%{_bindir}/nmap%{_datadir}/nmap%changelog

编译nmap RPM包

上传nmap源码文件到SOURCES/nmap-7.91.tar.bz2,执行下面的命令编译RPM包,过程如果没有错的话,会生成以下RPM文件:

$ ll RPMS/aarch64/

total 5676

-rw-rw-r--. 1 liuyl liuyl 5759680 Jan 27 17:44 nmap-7.91-1.el7.aarch64.rpm

-rw-rw-r--. 1 liuyl liuyl 47988 Jan 27 17:44 nmap-debuginfo-7.91-1.el7.aarch64.rpm

rpmbuild -ba SPECS/ultra-nmap.spec

-ba 既生成src.rpm又生成二进制rpm

-bs 只生成src的rpm

-bb 只生二进制的rpm

-bp 执行到pre

-bc 执行到 build段

-bi 执行install段

-bl 检测有文件没包含

验证RPM可用性

将nmap-7.91-1.el7.aarch64.rpm包上传到另外一台CentOS7机器上,执行如下命令进行安装:

# rpm -ivh nmap-7.91-1.el7.aarch64.rpm

Preparing... ################################# [100%]

Updating / installing...

1:nmap-7.91-1.el7################################# [100%]

安装成功,执行nmap命令进行端口扫描验证:

# nmap -n -Pn -T4 -sV -p22 10.10.17.143

PORT STATE SERVICE VERSION

22/tcp open ssh OpenSSH 7.4 (protocol 2.0)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。