文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Centos安装python3与scapy模块的问题如何解决

2023-07-02 16:27

关注

今天小编给大家分享一下Centos安装python3与scapy模块的问题如何解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

一、CentOS安装Python3

centos7自带版本是python2.7

如果要用的3.0以上的版本需要手动安装

先查看系统python的位置在哪儿

whereis python

Centos安装python3与scapy模块的问题如何解决

 python2.7默认安装是在 /usr/bin目录中,切换到/usr/bin/

cd /usr/bin/ll python*

从下面的图中我们可以看到,python指向的是python2,python2指向的是python2.7,因此我们可以装个python3,然后删除python链接,将python3指向python3,然后python2指向python2.7,那么两个版本的python就能共存了。

Centos安装python3与scapy模块的问题如何解决

下载python3的包之前,要先安装相关的依赖包,用于下载编译python3:

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

运行了以上命令以后,就安装了编译python3所用到的相关依赖

默认的centos7是没有安装pip,先添加epel扩展源

yum -y install epel-release

安装pip

pip install wget

用pip装wget

pip install wget

用wget下载python3的源码包,或者自己先下载好,上传到服务器再安装,如果网络快可以直接安装

wget https://www.python.org/ftp/python/3.9.6/Python-3.9.6.tar.xz

编译python3源码包,解压

xz -d Python-3.9.6.tar.xztar -xf Python-3.9.6.tar

进入解压后的目录,依次执行下面命令进行手动编译

cd Python-3.9.6./configure prefix=/usr/local/python3make && make install

注意:

安装过程中报错:

ModuleNotFoundError: No module named '_ctypes'

make: *** [install] Error 1

Centos安装python3与scapy模块的问题如何解决

问题原因:
python3中有个内置模块叫ctypes,它是python3的外部函数库模块,提供了兼容C语言的数据类型,并通过它调用Linux系统下的共享库(Shared library),此模块需要使用centos7系统中外部函数库(Foreign function library)的开发链接库(头文件和链接库)。
由于在centos7系统中没有安装外部函数库(libffi)的开发链接库软件包,所以在安装pip的时候就报了"ModuleNotFoundError: No module named ‘_ctypes’"的错误。

解决方法:

yum install -y libffi-devel# 如果没有yum源,可下载包上传https://vault.centos.org/

然后重新./configure ... make ... make install

安装依赖zlib、zlib-deve

yum install zlib zlibyum install zlib zlib-devel

最后没提示出错,就代表正确安装了,在/usr/local/目录下就会有python3目录
11、添加软链接,将原来的链接备份

mv /usr/bin/python /usr/bin/python.bak

添加python3的软链接

ln -s /usr/local/python3/bin/python3.9 /usr/bin/python3

测试是否安装成功了

python3 -V

Centos安装python3与scapy模块的问题如何解决

 14、更改yum配置,因为其要用到python2才能执行,否则会导致yum不能正常使用

vi /usr/bin/yum

把第一行的#! /usr/bin/python 修改为如下

#! /usr/bin/python2

还有一个地方也需要修改

vi /usr/libexec/urlgrabber-ext-down

把第一行的#! /usr/bin/python 修改如下

#! /usr/bin/python2

启动python2

python2

Centos安装python3与scapy模块的问题如何解决

 19、启动python3

python3

Centos安装python3与scapy模块的问题如何解决

 二、安装scapy模块

Scapy是一个强大的基于Python的交互式包操作程序和库。 它能够伪造或解码大量协议的数据包,在有线上发送它们,捕获它们,使用pcapfile存储或读取数据包,匹配请求和答复,等等。 它被设计为通过使用可用的默认值来允许快速的数据包原型化。 它可以轻松地处理大多数经典任务,如扫描、跟踪、探测、单元测试、攻击或网络发现(它可以替换hping,85%nmap, arpspoof, arp-sk, arping, tcpdump, wireshark, p0f等等)。它还能很好地执行大多数其他工具无法处理的许多其他特定任务,如发送无效帧、注入您自己的802.11帧、组合技术(VLAN跳变+ARP缓存中毒、WEP保护信道上的VoIP解码等)。

yum安装相关依赖程序

yum -y install tcpdump graphviz ImageMagick

到GitHub上下载安装包,进行编译安装

#https://github.com/secdev/scapycd scapy-master/python3 setup.py install

创建软链接

ln -s /usr/local/python3/bin/python3.7 /usr/bin/pythonln -s /usr/local/python3/bin/pip3.7 /usr/bin/pipln -s /usr/local/python3/bin/scapy /usr/bin/scapy

scapy生成动态路由轨迹图代码示例

#!/usr/bin/python3#-*-coding:UTF-8-*-import os,sys,time,subprocessimport logging,warningswarnings.filterwarnings("ignore",category=DeprecationWarning) #屏蔽scapy无用警告信息logging.getLogger("scapy.runtime").setLevel(logging.ERROR) #屏蔽模块IPV6多余警告from scapy.all import traceroutedomains = input('请输入IP地址或域名地址:')target = domains.split(' ')dport = [80] #扫描的端口列表if len(target) >=1 and target[0] !='':res,unans = traceroute(target,dport=dport,retry=2) #启动路由跟踪res.graph(target="> test.svg") #生成svg矢量图形time.sleep(1)subprocess.Popen("/usr/bin/convert test.svg test.png", shell=True)#svg转png格式else:print('IP/domain number of errors,exit')

以上就是“Centos安装python3与scapy模块的问题如何解决”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯