⑴ 如何用树莓派和Kali Linux搭建便携式的黑客工作站
需要的东西:
树莓派(B+或者2更好)
一个电池组(任何给智能手机充电用的带USB端口的外接5V电池应当就可以,当然也有更多优雅的方法,如果你感兴趣的话)
一张无线网卡
一张8GB的SD卡
一个PiTFT触屏(如果为了使用更好的屏幕且不介意随身携带大点的设备,也可以用官方7英寸的触屏)
一个外壳(可选,但如果你随身带着树莓派,它就很有用。把PiTFT和树莓派装入这个Adafruit的外壳非常不错)
键盘(我喜欢使用带触摸板的小无线键盘,适合装进小包里。)
一个台式计算机(用来完成最开始的安装)
第一步:在树莓派上安装Kali
视频地址:https://youtu.be/aTQjuDfEGWc
在开始之前,你需要下载和安装Kali Linux支持树莓派的触屏版本镜像。它与安装任何其他的树莓派操作系统一样,我们在这里已经详细介绍过了,不过以下是简易版本:
在Windows下如何安装Kali到SD卡
1.下载 Kali Linux Raspberry Pi TFT image ,解压里面的.img文件。注意:如果你使用的不是触摸屏,请下载Kali Linux支持树莓派的常规版本。
2.下载Win32DiskImager并解压其中的程序(.exe文件)。
3.使用读卡器把SD卡插入到Windows PC机。
4.双击打开刚刚下载的程序 Win32DiskImager.exe 。如果你运行的是 Windows 7或者8,则右击执行程序并选择“以管理员身份运行”。
5.如果SD卡没有被该程序自动检测到,点击右上角(“设备”栏)的下拉菜单,从列表中选择SD卡。
6.在应用的镜像文件选择区,点击小文件夹图标,选择 Raspbian.img 文件。
7.点击写入(Write)按钮并等待 Win32DiskImager 完成。当它完成后,你可以安全地弹出SD卡,然后把它插入树莓派。
在OS X下如何安装Kali到SD卡
1.下载 Kali Linux Raspberry Pi TFT image ,解压里面的.img文件。注意:如果你使用的不是触摸屏,请下载 Kali Linux支持树莓派的常规版本。
2.下载 RPi-sd card builder(一定要为你所安装的OS X选择合适的版本)并解压程序。
3.使用读卡器把 SD 卡插入到 Mac。
4.打开RPi-sd card builder。你会被立刻要求选择一个Raspbian镜像。选择之前下载的.img文件。
5.你会被询问SD卡是否已连接。由于我们之前就插入了,那它已经连接上了,所以点击继续(Continue)。然后会出现SD卡选择界面。如果你只插入了一个,并且在列表中也没有看到其它的,它会被选中。否则,就选择所希望使用的SD卡并点击OK。
6.输入管理员密码,点击OK。
7.你会被询问SD卡是否已被弹出。这是正常的,因为只有被卸载后它才可以执行直接复制。再次确认SD卡在Finder中不再被使用。不要从USB端口中移除它。当你确定要弹出时,点击继续(Continue)。
8.RPi-sd card builder 完成SD卡的准备工作,安全弹出卡并插入到树莓派中。
树莓派有一个触屏可适配的GPIO(通用输入/输出),即树莓派主板角上的一组针脚,如何使用显而易见。继续,插入显示屏到树莓派。
第三步:插上所有的电源并启动
安装好显示器后,就该接通其他零件的电源了。把Wi-Fi适配器和键盘接入到USB端口。再把树莓派连接到电池组。
启动过程有可能有点缓慢和粗陋,不必为此担心。首先,在启动开始前,会先显示一会儿白屏。最终,将显示登录界面。
第四步:登录并且启用无线网卡
现在该登录和启用无线网卡了,这样你才可以真正地使用 Kali Linux 里的工具。树莓派会自动识别无线网卡,但是你仍然需要连接上网络。首先,需要启动 Kali Linux 图形用户界面并确保一切正常:
1.树莓派的命令行上将显示用户名和密码的提示。输入用户名 root 和密码 toor (一会儿要修改掉该密码)。
2.输入 startx 然后回车来启动 Kali 图形界面。在树莓派上加载可能需要一段时间。
3.现在你可以用触屏和键盘来操控树莓派。点击底部任务栏的终端图标来打开命令行。
4.设置无线网卡,在命令行输入nano /etc/network/interfaCES 并回车来加载Wi-Fi设置的配置文件。
5.增加如下文本到你刚刚打开的文件,替换上你自己的网络信息:
auto wlan0 iface wlan0 inet dhcp wpa-ssid “你的网络名称” wpa-psk “网络密码”
完成后,按下 Ctrl+X 保存并退出。无线网卡现在可以使用了(有可能需要先重启)。
第五步:修改密码
在开始任何操作之前,很有必要修改设备的root密码(避免其他也有类似黑客技能的人控制它)。还好这个过程很简单。
1.如果你还在命令行(如果不在,点击 Kali 的终端图标重新打开它),输入 passwd 并回车。
2.输入新密码两次。
3.重新配置 OpenSSH 也有好处,这样它不会是默认设置。输入 dpkg-reconfigure openssh-server 并回车。
现在你的小型便携式系统已设置完成且是安全的。
⑵ 树莓派(Linux 系统)触摸屏翻转显示以及触摸翻转
树莓派(Linux 系统)触摸屏翻转显示以及触摸翻转
问题:未使用的Pi官方屏幕,所以使用HDMI屏幕显示的时候,显示旋转的同时,触摸没有旋转
目的:旋转屏幕显示的同时,使得触摸也跟随旋转
操作总流程:
旋转90度操作
翻转显示:
1.sudo nano /boot/config.txt
2.在文件末尾加入
display_rotate=0
display_rotate=1 //90°
display_rotate=2 //180°
display_rotate=3 //270°
ctrl + o 保存文档 重启即可。
注:以下操作皆为SSH操作,所以每条指令前都加了DISPLAY=:0,如果本机操作删掉即可。
1.安装xinput
sudo apt-get install xinput
2.列出所有输入设备信息 远程操作时,使用xinput指令需要加入DISPLAY=:0
DISPLAY=:0 xinput --list
3.列出目标设备属性
DISPLAY=:0 xinput --list-props 7
4.旋转触摸的坐标轴
1)所以先交换x、y轴
DISPLAY=:0 xinput --set-prop '7' 'Evdev Axes Swap' 1
2)然后反转y轴
DISPLAY=:0 xinput --set-prop '7' 'Evdev Axis Inversion' 0 1
显示旋转修改之后需要重启。而触摸旋转不需要重启。
详细操作方法:
1.安装xinput
sudo apt-get install xinput
描述:
xinput - utility to configure and test X input devices
xinput-用于配置和测试X输入设备的实用程序
xinput is a utility to list available input devices,
xinput是一个实用程序,可以列出可用的输入设备、
query information about a device and change input device settings.
关于设备的查询信息和更改输入设备设置
2.列出所有输入设备信息
xinput --list
如果远程操作记得在命令前加DISPLAY=:0
得到以下信息:
pi@NTGAGE:~ $ DISPLAY=:0 xinput --list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech USB Optical Mouse id=6 [slave pointer (2)]
⎜ ↳ WaveShare WaveShare Touchscreen id=7 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Logitech USB Keyboard id=8 [slave keyboard (3)]
↳ Logitech USB Keyboard id=9 [slave keyboard (3)]
3.列出目标设备属性
由于所使用的触摸屏幕是微雪7寸屏幕,由以上信息可以得到微雪的触摸屏对应的ID为7
所以,接下来看这款输入设备的属性,
pi@NTGAGE:~ $ DISPLAY=:0 xinput --list-props 7
Device 'WaveShare WaveShare Touchscreen':
Device Enabled (115): 1
Coordinate Transformation Matrix (116): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (240): 0
Device Accel Constant Deceleration (241): 1.000000
Device Accel Adaptive Deceleration (242): 1.000000
Device Accel Velocity Scaling (243): 10.000000
Device Proct ID (244): 3823, 5
Device Node (245): "/dev/input/event3"
Evdev Axis Inversion (246): 0, 0
Evdev Axis Calibration (247): <no items>
Evdev Axes Swap (248): 0
Axis Labels (249): "Abs MT Position X" (267), "Abs MT Position Y" (268), "Abs MT Pressure" (269), "None" (0), "None" (0), "None" (0)
Button Labels (250): "Button Unknown" (233), "Button Unknown" (233), "Button Unknown" (233), "Button Wheel Up" (121), "Button Wheel Down" (122)
Evdev Scrolling Distance (251): 0, 0, 0
Evdev Middle Button Emulation (252): 0
Evdev Middle Button Timeout (253): 50
Evdev Third Button Emulation (254): 0
Evdev Third Button Emulation Timeout (255): 1000
Evdev Third Button Emulation Button (256): 3
Evdev Third Button Emulation Threshold (257): 20
Evdev Wheel Emulation (258): 0
Evdev Wheel Emulation Axes (259): 0, 0, 4, 5
Evdev Wheel Emulation Inertia (260): 10
Evdev Wheel Emulation Timeout (261): 200
Evdev Wheel Emulation Button (262): 4
Evdev Drag Lock Buttons (263): 0
这块屏幕正常显示和触摸的信息如上。
如果执行到这一步,发现并没有以上的Evdev等属性项,请跳转第2种方法。
现在需要达到的目的是在屏幕显示反转的同时,使得触摸也随显示翻转。
屏幕显示为翻转90度。/boot/config.txt设置为display_rotate=1
上述信息中Evdev Axis Inversion 项是每条轴的旋转设置项,后面第一个参数是x,第二个参数是y.
Evdev Axes Swap项对应的是两条轴的交换。
0为不翻转,1为翻转
例如。x轴原本是朝向右的,当把Evdev Axis Inversion的第一个参数
设置为1,即x轴朝向左。
4.旋转触摸的坐标轴
现在目的是要触摸旋转90度,从坐标轴理解:
即目的x轴正向为初始y轴的反向。目的y轴的正方向为初始x轴的正向。
1)所以先交换x、y轴
DISPLAY=:0 xinput --set-prop '7' 'Evdev Axes Swap' 1
2)然后反转y轴
DISPLAY=:0 xinput --set-prop '7' 'Evdev Axis Inversion' 0 1
这样即可完成触摸旋转90度。若要旋转其他角度,推理一下即可。
显示旋转修改之后需要重启。而触摸旋转不需要重启。
第二种方法
如果查询到的信息如下
DISPLAY=:0 xinput --list-props 6
Device 'WaveShare WaveShare Touchscreen':
Device Enabled (114): 1
Coordinate Transformation Matrix (115): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Calibration Matrix (246): 0.000000, 1.000000, 0.000000, -1.000000, 0.000000, 1.000000, 0.000000, 0.000000, 1.000000
libinput Calibration Matrix Default (247): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Send Events Modes Available (248): 1, 0
libinput Send Events Mode Enabled (249): 0, 0
libinput Send Events Mode Enabled Default (250): 0, 0
Device Node (251): "/dev/input/event0"
Device Proct ID (252): 3823, 5
可以看到该驱动方式采用的是libinput,
查看/usr/share/X11/xorg.conf.d/目录下是否有40-libinput.conf这个文件。
无 则需要安装
sudo apt-get install xserver-xorg-input-libinput
下一步安装完成后ls一下,就可以看到在/usr/share/X11/xorg.conf.d/目录下存在该文件,
下一步复制该文件到/etc/X11/xorg.conf.d/目录下。
一开始xorg.conf.d这个目录在/etc/X11可能没有,需要自己创建。
sudo mkdir xorg.conf.d
下一步复制到xorg.conf.d 目录下即可。
sudo cp /usr/share/X11/xorg.conf.d/40-libinput.conf /etc/X11/xorg.conf.d/
下一步进入/etc/X11/xorg.conf.d/目录下修改40-libinput.conf 文件
cd /etc/X11/xorg.conf.d/
sudo nano 40-libinput.conf
找到touchscreen section
Section "InputClass"
Identifier "libinput touchscreen catchall"
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
添加一行 Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1
结果为
Section "InputClass"
Identifier "libinput touchscreen catchall"
Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
然后重启生效
这样的修改也是同样修改为翻转90度,如果需要修改为其他角度,请参考libinput的算法
https://wayland.freedesktop.org/libinput/doc/latest/absolute_axes.html
⑶ 请教下树莓派,组成、功能、特点
树莓派(也叫Raspberry Pi,简写为RPi,或者RasPi/RPi)
为学生计算机编程教育设计的一种卡片式电脑,自问世以来,受众多计算机发烧友和创客的追捧,曾经一“派”难求。别看其外表“娇小”,内“心”却很强大,视频、音频等功能通通皆有,可谓是“麻雀虽小,五脏俱全”。
[组成]
[功能]就像其他任何一台运行Linux 系统的台式计算机或者便携式计算机那样,利用Raspberry Pi 可以做很多事情。当然,也难免有一点点不同。普通的计算机主板都是依靠硬盘来存储数据,但是Raspberry Pi 来说使用SD 卡作为“硬盘”,你也可以外接USB 硬盘。利用Raspberry Pi 可以编辑Office 文档、浏览网页、玩游戏—即使玩需要强大的图形加速器支持的游戏也没有问题,如《雷神之锤》(Quake )。
[特点]方便编程、容易改造、能发挥创造力、价格低廉⑷ 第15讲树莓派3.5寸LCD触摸屏怎么用
蓝宙电子致力成为国内创客内容提供商领先品牌,树莓派作为创客开源硬件中的一员,也是蓝宙电子创客的内容之一。随着近日来树莓派的大量出售,不仅树莓派的技术问题很多,而且其外设问题也是不少。其中,3.5寸LCD触摸屏首当其冲。总会有这样的声音:LCD怎么显示系统界面呢?HTML和LCD可以同时显示吗?通过SSH怎么安装启动LCD呢?
带着这样的疑问,今天蓝宙每日一讲我们来讲述一下树莓3.5寸LCD触摸屏到底怎么用?也就是一帖搞定树莓LCD触摸屏。
首先,使用将烧有raspbian系统的SD卡插入树莓派中,给树莓派供电,启动电源,上一张实物图,注意屏的插法!
待系统稳定后,采用SSH远程登录树莓后,界面如下。
此时,LCD的屏幕是白色的,没有显示操作系统界面,但是不要急通过SSH远程命令可以将LCD使用起来。
首先写命令:
sudo raspi-config
回车后,进入设置界面如下:
确保已经选择:Enable Boot to Desktop/Scratch -> Desktop Log in as user ‘pi’ at the graphical desktop打开后,
下载LCD驱动,驱动回帖可见:
解压,将LCD-show.tar.gz通过网络或U盘,复制到自定义的镜像中,运行命令:(特别提醒运行命令前一定要不开VNC图形界面,不然系统有可能瘫痪)
tar xvf LCD-show.tar.gz
cd LCD-show/
#3.2inch RPi LCD (B)运行
sudo ./LCD32-show
#3.5inch RPi LCD (A)运行
sudo ./LCD35-show
#4inch RPi LCD (A)运行
sudo ./LCD4-show
#5inch HDMI LCD运行
sudo ./LCD5-show
等待几分钟,系统自动重启,即可正常使用树莓派LCD,启动后的实物图如下:
如果想切换为HDMI显示,只需运行命令
sudo ./LCD-hdmi
更新系统需按照以下方式进行,否则可能导致镜像无法运行:
sudo apt-mark hold raspberrypi-bootloader
sudo apt-get update
sudo apt-get upgrade
有的时候需要旋转屏幕的显示方向,旋转方向有90度 180度和270度,方法如下:
如需旋转90度,则:width=320 height=480 改为: width=480 height=320 -1,0x36,0x28,-1 改为: -1,0x36,0x48,-1
如需旋转180度,则:-1,0x36,0x28,-1 改为: -1,0x36,0xe8,-1
如需旋转270度,则:width=320 height=480 改为: width=480 height=320 -1,0x36,0x28,-1 改为: -1,0x36,0x88,-1
按键盘Ctrl + X,选择Y,保存退出
在终端执行命令:sudo nano /etc/X11/xorg.conf.d/99-calibration.conf
显示如下图所示(触摸参数以实际值为准)
如需旋转90度,则更改如下:
如需旋转180度,则更改如下:
如需旋转270度,则更改如下:
到此,蓝宙每日一讲第15讲树莓派3.5寸LCD触摸屏使用已经结束了。有什么疑问和问题欢迎在本帖留言,我们会及时回复您。另外,本讲的资料已经附在帖子的内容中,欢迎下载。