现在攻击机和目标机分别为: 攻击机 Linux 192.168.81.160 目标机 Linux 192.168.81.162 简单把反弹一个完全交互shell的过程写出来 # 攻击机本地执行...使用socat socat是类Unix系统下的一个工具,可以看作是 nc 的加强版。我们可以使用socat来传递完整的带有tty的TCP连接。...缺点也很明显,只能在linux下面运行 下载地址: https://github.com/andrew-d/static-binaries/blob/master/binaries/linux/x86_...4. script获取pty 我们可以使用 Linux 系统下的 script 命令,在弹回来的 shell 下创建一个带有 tty 的 shell, 这样就可以勉强使用一下 top 和 vim :...$ script /dev/null 如果不加 /dev/null 的话,会在当前路径下生成一个名字是 typescript 的文件,记录着在 script 生命周期里你执行的所有命令和结果。
Ctrl+U —— 删除光标前的所有字符 Ctrl+L —— 清屏 Tab —— 快速补全命令或目录(按一次或当有多个匹配项时两次) Ctrl+Alt+T —— 新建一个终端窗口 # Linux...)所占用的磁盘空间都是 4096byte,目录大小不包括目录内的文件大小 目录必须有执行权限才能进入 Linux 下隐藏文件以。...(实测 Ubuntu-20.04.2.0 自带有) 参数: a —— 压缩 x —— 解压缩 压缩: rar a [生成的压缩文件的名字(自动添加.rar后缀)] [要压缩的文件或目录]...---- # 相关命令 who 查看当前在线用户的情况(登录的用户名、使用的设备终端、登陆到系统的时间) 关于 tty 设备:(这个没搞太清楚,仅做参考) tty3 - tty6 表示文字界面(...eth1…) 硬件地址(MAC 地址) ping 同 CMD 的 ping,但是会一直运行直到用户手动结束 ping -c [次数] 指定 ping 的次数 ping -i [秒数]
安装arm的交叉编译工具链 想必做嵌入式开发的朋友,对交叉编译工具链不陌生。如果你订制一个交叉编译工具链,建议你使用 crosstool-ng开源软件来构建。...根文件系统就是简单得不能再简单的几个命令集和态动态而已。为什么Linux From Scratch会有那么复杂,是因为它要制作出一个Linux发生版。...从工具链中拷贝运行库到lib目录下 sudo cp -P /usr/arm-linux-gnueabi/lib/* rootfs/lib/ 4....创建4个tty端终设备 sudo mknod rootfs/dev/tty1 c 4 1 sudo mknod rootfs/dev/tty2 c 4 2 sudo mknod rootfs/dev/tty3...…… 写在后面的话 通过上面的步骤,搭建出来一个最小的qemu+arm开发环境,你可以上面的基础上修改内核,或者增加一些测试程序在单板上运行,甚至使用单板的flash设备。
Parabola GNU/Linux-libre,一个基于Arch的发行版,注重简洁的软件包和系统管理。 ... 看到没,上面这些估计你一个都不知道,我也都不认得。 这究竟是怎么一回事?...不能需要安装其它特定的软件的前提下才能安装这个系统。 许可证规则 一个自由的系统中的软件,文档,字体等所有功能相关的,其信息及源文件必须符合自由许可证。不能包括或引导用户安装非自由的软件。...比如一个系统源中,有非自由的软件存在,用户能够安装。那这个就违规了。 不能包括非自由固件 一些应用或驱动需要特定的固件才能工作,所以大多数系统会在发布的版本中带上类似的固件。...,而且其内核(Linux)也带有非自由的blobs 现在你理解了自由的操作系统标准可不低,事实上我认为已经比较苛刻了。...四) 程序员都知道开源软件,开源软件必须有开源许可证协议,常见的MIT,apache license v2等。一个软件只要申明它的许可证,并属于开源许可证协议的一种,就可以被认为是开源软件。
普通用户 指使用linux系统中的真实用户,这类用户可以使用用户名和密码来登陆系统。普通用户只能在其家目录中操作,其用户的UID一般大于500。...root用户对系统拥有绝对的控制权。其可以修改、删除任何文件,可以运行任何命令。 系统用户 系统用户是指运行系统必须有的用户,但不是指真实的使用者。...例如需要运行MySQL数据库服务时,需要系统用户mysql来运行mysqld进程。系统用户ID的范围是1~499。 用户组 用户组跟用户类似,其每个用户均属于其一个用户组中。...swz@swz-ubuntu:~$ groups swz adm cdrom sudo dip plugdev lpadmin lxd sambashare 用户名和用户密码配置文件 我们在登陆linux...7 登陆shell 用户登录时所用的shell 默认其他用户是不能查看密码的,只有根用户(root用户)才能查看密码。
设置网卡IP地址(设置后,都要使用down和up软重启下网卡才能正常工作) sudo ifconfig eth1 up 开设备网卡1,通过ifconfig可以看到 sudo ...为新的.config cp *.so* /work/nfs_root/mini_fs/lib -d //复制所有后缀名为带有so开头的文件到lib目录(*:匹配符,-d: 保持链接,原来的是链接...,或者更改文件属性) vim rm 创建/打开一个名为rm的文本 vim rm +28 创建/打开一个名为rm的文本,并跳到...不保存直接退出 :50 跳转第50行 :$ 跳到文件最后一行 /test 查找带有test字段的行, 然后一直按 n ,将会匹配下一个test字段 crtl.../hello & 后台运行hello程序,前提是hello程序中有个while一直循环 dmsg 打印printk()存在环形缓冲区里的所有信息,可以查看内核启动信息
在 Linux 环境下 top 命令都不陌生,它以实时动态的方式查看系统的整体运行情况,综合了多方信息监测系统性能和运行信息的实用工具,通过 top 命令所提供的互动式界面,可以用热键来进行管理。...k:终止一个进程; i:忽略闲置和僵死的进程; q:退出 top; r:重新安排一个进程的优先级别; S:切换到累计模式; s:改变两次刷新之间的延迟时间(单位为s),如果有小数,就换算成ms。...force (ON) tty mode, max 16 colors and tty friendly graph symbols +t, --tty_off force...七、gotop gotop[6]是基于 Go 语言编写,是一个基于终端的图形活动监视器,可在 Linux、FreeBSD 和 macOS 上运行。...类似于 top 的可过滤进程表,包括每个进程的磁盘使用情况 更改流程优先级 可缩放图表视图(支持及时回滚) 使用信号管理流程 运行之间保存的性能数据 NVIDIA GPU 的 GPU 利用率指标(带有
#只需要查找3级别以上的服务是否开启,3代表运行级别的中的数字。...lsattr命令是显示chattr命令设置的文件属性。 a即append,设定该参数后,只能向文件中添加数据,而不能删除,多用于服务器日志文 件安全,只有root才能设定这个属性。...=/dev/tty[1-2] [brian@Master ~]$ sudo nano /etc/sysconfig/init 修改ACTIVE_CONSOLES=/dev/tty[1-6]为ACTIVE_CONSOLES...=/dev/tty[1-2] 修改完成重启机器 调整Linux的最大文件打开数 在/etc/security/limit.conf中添加如下设置: [brian@Master ~]$ sudo nano...发生变化时间 mtime 此文件的修改时间 如果一个linux服务器很多小文件和琐碎的资源文件,通常没有你要记录文件的访问时间,这样可以减少写磁盘的I/O。
在linux系统下,普通用户无法直接执行root用户权限下的命令,如果想让普通用户执行只有root用户才能执行的操作命令。...实例说明: 如果当前帐号在/etc/sudoers文件中被授予sudo的权限,那么你就可以将任何root命令作为sudo 命令的参数,使用root权限来执行该命令。...但是如果一个命令是shell内置命令,那么只能直接由shell 来运行。...sudo 的意思是,以别的用户(如root)的权限来fork一个进程,加载程序并运行,因此sud 后面不能跟shell 的内置命令。...操作记录日志 作为一个Linux系统的管理员,不仅可以让指定的用户或用户组作为root用户或其它用户来运行某些命令,还能将指定的用户所输入的命令和参数作详细的记录。
SSH 是 Linux 下进行远程连接的基本工具,但是如果仅仅用它来登录那可是太浪费啦!SSH 命令可是完成远程操作的神器啊,借助它我们可以把很多的远程操作自动化掉!...下面就对 SSH 的远程操作功能进行一个小小的总结。 远程执行命令 如果我们要查看一下某台主机的磁盘使用情况,是不是必须要登录到目标主机上才能执行 df 命令呢?...这两条命令虽然提示的失败原因不同,但它们有一个共同点:都需要与用户交互(需要 TTY)。所以它们失败的原因也是相同的: 默认情况下,当你执行不带命令的 ssh 连接时,会为你分配一个 TTY。...因为此时你应该是想要运行一个 shell 会话。 但是当你通过 ssh 在远程主机上执行命令时,并不会为这个远程会话分配 TTY。此时 ssh 会立即退出远程主机,所以需要交互的命令也随之结束。...执行本地的脚本 我们在本地创建一个脚本文件 test.sh,内容为: ls pwd 然后运行下面的命令: $ ssh nick@xxx.xxx.xxx.xxx < test.sh ?
-r——建立一个系统组账号,与-g不同时使用时,则分配一个1~999的GID。...举例: #向系统中添加一个组ID为1000,组名为group1的新组 sudo groupadd -g 1000 group1 1.2 修改用户组属性 语法格式: groupmod 选项 用户组 常用选项详解说明...[选项] [用户] [组] 注意:只有root用户和组管理员才能够使用该命令 常用选项详解说明: -r 删除组密码 -a——把用户加入组 -d——把用户从组中删除。...sudo usermod -aG group1 li4 如果 group1 是一个需要特殊权限的组(例如 sudo 权限),你可以将 zhang3 添加到 sudo 组(假设你的系统使用的是基于 Debian...[root@node13 ~]# who -q root # users=1 #显示当前系统的运行级别 [root@node13 ~]# who -r run-level
:kernel和toolchain部分,虽然通常提到linux发行指的是一个包含了所有打包的linux ---- 体积外观上最大的主要是其rootfs部分,即那个/下的部分,,但往往kernel才是一个发行版的表征...最终的目的,将会是一个支持64位/32们混合的文件系统,和一个高度自定义,system和用户扩展文件夹分开的,这样一个linux发行版。 这究竟会是一个什么样的LINUX呢?...这样有很多好处,外观清爽不说,还可以在一个分区中准备多个发行版并从中引导运行(有没有一点像虚拟化?),每个rootfs对应一个发行版/system1,/system2,etc.....rootfs的基础和中心,总管,它自包含我们建立这个测试环境需要的一切,我们来使用它建立这个最简的rootfs样本: 我们是在tinycolinux本身带有GCC481的环境下测试的,为了方便测试使用云主机...这段参数其实就是kernel转手给通往rootfs init的连接器(其实你可以patch kernel中的init/main.c让它加载你自己的init)。
电传打字机可让你通过线路发送/接收短信。它取代了摩尔斯电码通信,在这种通信中,需要两个操作员才能有效地相互通信。 而且,电传打字机只需要一个操作员即可轻松传达信息。...例如,GNOME 终端或Konsole是你可以找到的适用于Linux的最好的终端模拟器。 Linux中的TTY 说到 Linux,TTY是UNIX 和Linux 中的一个抽象设备。...TTY是Linux和Unix中的一个子系统,它通过TTY驱动程序使进程管理、行编辑和会话管理在内核中成为可能。在编程方面,你需要深入研究。但是,考虑到本文的范围,这可能是一个容易消化的定义。...如果你好奇,你可以探索一个旧资源 ( TTY Demystified ),它试图清除Linux和Unix系统中的所有技术细节让你了解TTY。...但是,前两个快捷方式指向发行版的锁定屏幕和桌面环境。因此,你将获得带有其余快捷方式的命令行界面。 在Linux中什么时候使用TTY tty不仅仅是技术宝藏。
一个正常的Linux用户一般掌握大约50-60个命令来处理每日的任务。Linux命令和它们的转换对于Linux用户、Shell脚本程序员和管理员来说是最有价值的宝藏。...有些Linux命令很少人知道,但不管你是新手还是高级用户,它们都非常方便有用。 ? 这篇文章的目的是介绍一些少有人知的Linux命令,它们一定会高效地帮你管理你的桌面/服务器。 1. sudo !!...命令 没有特定输入sudo命令而运行,将给出没有权限的错误。那么,你不需要重写整个命令,仅仅输入’!!‘就可以抓取最后的命令。...mtr命令,开始查看mtr运行的主机和google.com直接的网络连接。...那么这个命令就在你的终端输出你的外部IP地址。 # curl ifconfig.me 注意:你可能没有按照curl包,你需要 apt/yum来按照包。
/~graphics-drivers/+archive/ubuntu/ppa c 如果需要卸载nvidia驱动(比如进入无限登陆界面时),在终端或者tty1控制台Ctrl+Alt+F1(输入账号及密码后...加速应用程序的开发环境,要使用GPU进行深度学习开发,就必须有CUDA。...,执行以下命令开始安装: $ sudo sh cuda_9.0.176_384.81_linux.run 其间,显示完协议说明之后会有相关选项需要输入指令做出配置: accept/decline/quit...执行该可执行文件 安装cuDNN cuDNN是一个专门针对深层神经网络的GPU加速库。研究者依靠cuDNN为高性能GPU加速。...$ tar -zxvf cudnn-9.0-linux-x64-v7.taz 然后,将cuDNN相应文件添加到CUDA库,在终端执行以下命令: $ sudo cp cuda/include/cudnn.h
要感谢 Vlock(Virtual Console lock),这是一个命令行程序,用于锁定 Linux 控制台上的一个或多个会话。如有必要,你可以锁定整个控制台并完全禁用虚拟控制台切换功能。...在 Debian、Ubuntu、Linux Mint 上,运行以下命令来安装 Vlock: $ sudo apt-get install vlock 在 Fedora 上: $ sudo dnf install...vlock 在 RHEL、CentOS 上: $ sudo yum install vlock 在 Linux 上锁定虚拟控制台会话 Vlock 的一般语法是: vlock [ -acnshv ] [...1、 锁定当前控制台会话 在没有任何参数的情况下运行 Vlock 时,它默认锁定当前控制台会话 (TYY)。要解锁会话,你需要输入当前用户的密码或 root 密码。...2、 锁定所有控制台会话 要同时锁定所有 TTY 并禁用虚拟控制台切换功能,请运行: $ vlock -a 同样,要解锁控制台会话,只需按下回车键并输入当前用户的密码或 root 用户密码。
root用户拥有绝对权力,执行的任何操作都对系统至关重要。在这方面,任何错误由root用户可能对系统的正常运行产生巨大影响。此外,该帐户也可能因意外、恶意或人为无视规则而被不当或不当使用而被滥用。...因此,建议禁用 Linux 服务器中的 root 访问权限,而是创建一个管理帐户,该帐户应配置为使用sudo 命令获得 root 用户权限,以在服务器上执行关键任务。...禁止访问 root帐户之前,确保你已经创建了一个管理帐户,能够使用sudo 命令获得 root 用户权限,使用useradd 命令并为此用户帐户提供强密码。...,其中开关-a表示追加用户帐户并-G指定一个组以将用户添加到(wheel 或 sudo 取决于你的 Linux 发行版): # usermod -aG wheel admin #CentOS/RHEL...上面的文件允许你指定哪个 TTY 允许 root 用户登录的设备,清空此文件可防止在连接到计算机系统的任何设备上进行 root 登录。
要感谢 Vlock(Virtual Console lock),这是一个命令行程序,用于锁定 Linux 控制台上的一个或多个会话。如有必要,你可以锁定整个控制台并完全禁用虚拟控制台切换功能。...在 Debian、Ubuntu、Linux Mint 上,运行以下命令来安装 Vlock: $ sudo apt-get install vlock 在 Fedora 上: $ sudo dnf install...1、 锁定当前控制台会话 在没有任何参数的情况下运行 Vlock 时,它默认锁定当前控制台会话 (TYY)。要解锁会话,你需要输入当前用户的密码或 root 密码。...2、 锁定所有控制台会话 要同时锁定所有 TTY 并禁用虚拟控制台切换功能,请运行: $ vlock -a 同样,要解锁控制台会话,只需按下回车键并输入当前用户的密码或 root 用户密码。...vlock -h man vlock Vlock 可防止未经授权的用户获得控制台访问权限。如果你在为 Linux 寻找一个简单的控制台锁定机制,那么 Vlock 值得一试!
之所以使用 visudo 有两个原因,一是它能够防止两个用户同时修改它;二是它也能进行有限的语法检查。所以,即使只有你一个超级用户,你也最好用 visudo 来检查一下语法。...visudo 不会擅自保存带有语法错误的配置文件,它会提示你出现的问题,并询问该如何处理,就像: >>> sudoers file: syntax error, line 22 << 此时我们有三种选择...例如,我们想让 foobar 用户在 linux 主机上以 jimmy 或 rene 的身份执行 kill 命令,这样编写配置文件: foobar linux=(jimmy, rene) /...操作符,但这不是一个好主意。因为,用 ! 操作符来从 ALL 中 “剔出” 一些命令一般是没什么效果的,一个用户完全可以把那个命令拷贝到别的地方,换一个名字后再来运行。...因为在命令运行之前,shell 把重定向的工作做完了,sudo 根本就没看到重定向。
领取专属 10元无门槛券
手把手带您无忧上云