系统
uname -a # 查看内核/操作系统/CPU信息
head -n 1 /etc/issue # 查看操作系统版本
cat /proc/cpuinfo # 查看CPU信息
hostname # 查看计算机名
env # 查看环境变量
dmidecode #查看硬件详细信息
资源
free -m # 查看内存使用量和交换区使用量
df -h # 查看各分区使用情况
du -sh # 查看指定目录的大小
uptime # 查看系统运行时间、用户数、负载
网络
ifconfig # 查看所有网络接口的属性
iptables -L # 查看防火墙设置
route -n # 查看路由表
netstat -lntp # 查看所有监听端口
netstat -antp # 查看所有已经建立的连接
netstat -s # 查看网络统计信息
lsof #查看网络信息
进程
ps -ef # 查看所有进程
top # 实时显示进程状态
用户
w # 查看活动用户
id # 查看指定用户信息
last # 查看用户登录日志
finger root #查看管理信息
cut -d: -f1 /etc/passwd # 查看系统所有用户
cut -d: -f1 /etc/group # 查看系统所有组
crontab -l # 查看当前用户的计划任务
服务
chkconfig --list # 列出所有系统服务
chkconfig --list | grep on # 列出所有启动的系统服务
程序(配置yum源)
rpm -qa # 查看所有安装的软件包
rpm -ivh # 安装rpm包
rpm -e # 卸载rpm包
yum -y install man # 从yum源安装man命令,自动查找安装依赖关系(这个挺好用的)
yum -y remove man # 卸载man命令
渗透常用
uname -r # 查看系统内核版本号
hostname # 查看主机名
cat/proc/cpuinfo # 查看CPU信息
ifconfig # 查看当前接口IP
halt # 关机
reboot # 重启
pwd # 查看当前路径
cp # 拷贝文件
find [范围] [查找条件] # 查找文件
gzip -9 a.sql a.gz # 把a.sql高度压缩成a.gz
gzip -d a.gz # 解压缩
tar -cvf c.tar a b # 把文件a与b打包成c.tar
tar -zxvf c.tar # 解压c.tar到当前目录
useradd # 添加用户
userdel # 删除用户
passwd 用户名 # 修改指定用户的密码
常用的命令太多了,推荐大家去看一下《Linux就该这么学》,上面挺全的。
常用命令
:set nu //显示行号
a,A,o,O,i,I //插入文本
/passwd //在文本中查找passwd(从光标向下),按n检索下一个
?passwd //在文本中查找passwd(从光标向上),按n检索下一个
dd //删除整行
3dd //一次性删除3行
yy //复制整行
p //粘贴整行
: //进入底行模式
:%s/a/bg //把a全部替换成b
u //撤销操作
e! //恢复到打开文本的最初状态
:wq! //强制(!)保存(w)退出(q)
这个其实就是进单用户模式,我这里的环境是RHEL7.0。
选择内核的时候按e
进去之后,在这个linux16下一行的ro这里修改,改为rw init=/sysroot/bin/sh,然后按ctrl+x即可:
然后依次执行以下命令:
chroot /sysroot/
passwd
touch /.
执行完以后,连按ctrl+d直至出现loginout
reboot重启即可,这时密码已经修改了,很容易崩,改的时候先拍快照吧
/bin
用来存放普通用户的可执行文件
/boot
用来存储系统装载引导程序
/dev
各种存储介质
/etc
这个比较重要,系统的配置文件、一些服务的配置文件等等
/home
普通用户的家目录,相当于Windows的用户目录
/lib
静态库,一些函数库
/media
主要用于挂载光驱
/opt
第三方程序的安装目录
/proc
随系统开机生成一些配置文件
/root
管理员的家目录
/sbin
用于存放管理员的命令
/srv、/sys、/tmp
存放程序的临时配置文件
/usr
用于储存第三方的外部程序的目录比如user/bin、user/local
/var
这个也很重要,用于存储系统库还有系统日志比如/var/log、/var/www/html
ifconfig eth0 192.168.1.105/24 //临时修改网卡eth0的IP地址为192.168.1.105
ifconfig eth0 up/down //开启/关闭接口eth0
service network restart //重启网络服务
ifconfig eno16777736:1 IP地址 //创建一个逻辑接口并配上IP
vi /etc/sysconfig/network-scripts/ifcfg-eth0 //手动配置网络
这个为什么单独拿出来写呢,因为这个命令在加固的时候很有用,这就是chmod命令
就拿x.tar这个文件来说吧
-rw-r--r--. 1 root root 10K 4月 13 21:02 x.tar
首先第一个-代表这是一个文件,不是一个目录,目录是以d开头的,文件夹前的日期就是最后一次修改日期,前面的10k就是
文件大小,中间的1代表的是文件节点。
其次,两个root,左边的是文件的所有者,右边的是文件所在的分组,也就是说这个文件是由root组下的root用户创建的。
最后,前边的这串 rw-r--r-- 是什么意思呢,这个要三个三个的看,第一个rw-代表文件所有者对它的权限,第二个r--代
表所有组对它的权限,第三个r--代表其他人对它的权限。
这里的r(读)w(写)x(执行)分别对应数字4、2、1,-代表没有权限,这里这个文件的权限就是644。
那么现在假设要加固我们的Web目录应该怎么写,最安全的办法就是大家都有只读权限,没有写跟执行权限,我们可以这么去执行命令:
chmod 444 /var/www/html/* #/var/www/html下所有文件权限改为只读(4)
还可以更改文件所有者,用chown命令
chown admin /var/www/html/*