linux 常用命令记录

admin 2022年1月6日01:43:09评论30 views字数 3124阅读10分24秒阅读模式

记录自己常用的 Linux 命令

进程

创建后台进程

1
nohup sudo ./Cardinal > output.log 2>&1 &

删除某个程序的所有进程

1
2
ps -ef | grep Cardinal | grep -v grep | awk '{print $2}'|sudo xargs kill -9
ps -ef | grep spiderks.py | grep -v grep | cut -c 9-15 | xargs kill -9

用户

创建用户

1
2
useradd -g test -d /home/test1 -s /etc/bash -m test1
#注解:-g 所属组 -d 家目录 -s 所用的SHELL

删除用户命令

1
userdel -r test1

创建密码命令

1
passwd

设置普通用户允许sudo

1
2
3
sudo chmod u+w /etc/sudoers
sudo vi /etc/sudoers #在root ALL=(ALL:ALL) ALL下添加 用户 ALL=(ALL:ALL) ALL
sudo chmod u-w /etc/sudoers

存储

定时

新建定时文件

1
vi /etc/cron.d/FreshRSS

FreshRSS内容

1
*/30 * * * * root php /var/www/rss/FreshRSS/app/actualize_script.php > /tmp/FreshRSS.log 2>&1 &

查看crontab 是否启动成功,检测crontab 服务是否启动

1
/etc/init.d/cron status

没启动则要用下面命令启动

1
/etc/init.d/cron start

服务

docker

查看docker占用的存储

1
docker system df

docker批量停止某类型的容器

1
sudo docker ps |grep web_14|awk '{print $1}'| sudo  xargs docker stop

docker 批量启动某类型容器

1
sudo docker ps -a|grep web_14|awk '{print $1}'| sudo  xargs docker start

从宿主机拷文件到容器里面

1
2


从容器里面拷文件到宿主机

1
docker cp 容器名:要拷贝的文件在容器里面的路径       要拷贝到宿主机的相应路径

iptables

iptables是隔离主机以及网络的工具,通过自己设定的规则以及处理动作对数据报文进行检测以及处理。

1
iptables -t 表名 <-A/I/D/R> 规则链名 [规则号] <-i/o 网卡名> -p 协议名 <-s 源IP/源子网> --sport 源端口 <-d 目标IP/目标子网> --dport 目标端口 -j 动作


filter表:确定是否放行该数据包(过滤)
nat表:修改数据包中的源、目标IP地址或端口
managle表:为数据包设置标记
raw表:确定是否对该数据包进行状态跟踪

规则链名:
INPUT 本机进站的数据流 (路由前)
OUTPUT 本机出站的数据流 (数据包流入口)
FORWARD 路由的数据流 (转发管卡)
POSTROUTING 路由后的数据流(数据包出口)
PREROUTING 路由前的数据流 (路由后)

表跟链的对应关系:

1
2
3
filter: INPUT——OUTPUT——FORWARD   
nat: OUTPUT——PREROUTING——POSTROUTING
mangle: INPUT——OUTPUT——FORWARD——PREROUTING——POSTROUTING

动作包括:

1
2
3
4
5
6
7
accept:接收数据包。
DROP:丢弃数据包。
REDIRECT:重定向、映射、透明代理。
SNAT:源地址转换。
DNAT:目标地址转换。
MASQUERADE:IP伪装(NAT),用于ADSL。
LOG:日志记录

堵通策略
是指对数据包所做的操作,一般有两种操作——“通(ACCEPT)”、“堵(DROP)”,还有一种操作很常见REJECT.

谈谈REJECT和DROP之间的区别,Ming写了一封信,向Rose示爱。Rose如果不愿意接受,她可以不回应Ming,这个时候Ming不确定Rose是否接到了信;Rose也可以同样写一封信,在信中明确地拒绝Ming。前一种操作就如同执行了DROP操作,而后一种操作就如同REJECT操作。

查看iptables列表

1
iptables -nL

iptables命令的管理控制选项

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
-A  在指定链的末尾添加(append)一条新的规则
-D 删除(delete)指定链中的某一条规则,可以按规则序号和内容删除
-I 在指定链中插入(insert)一条新的规则,默认在第一行添加
-R 修改、替换(replace)指定链中的某一条规则,可以按规则序号和内容替换
-L 列出(list)指定链中所有的规则进行查看
-E 重命名用户定义的链,不改变链本身
-F 清空(flush)
-N 新建(new-chain)一条用户自己定义的规则链
-X 删除指定表中用户自定义的规则链(delete-chain)
-P 设置指定链的默认策略(policy)
-Z 将所有表的所有链的字节和数据包计数器清零
-n 使用数字形式(numeric)显示输出结果
-v 查看规则表详细信息(verbose)的信息
-V 查看版本(version)
-h 获取帮助(help

常用实例

1、清除已有iptables规则

1
2
3
iptables -F 
iptables -X
iptables -Z

2、开放指定的端口

1
2
3
4
5
6
7
8
9
iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT #允许本地回环接口(即运行本机访问本机) 
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT #允许已建立的或相关连的通行
iptables -A OUTPUT -j ACCEPT #允许所有本机向外的访问
iptables -A INPUT -p tcp --dport 22 -j ACCEPT #允许访问22端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT #允许访问80端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT #允许ftp服务的21端口
iptables -A INPUT -p tcp --dport 20 -j ACCEPT #允许FTP服务的20端口
iptables -A INPUT -j reject #禁止其他未允许的规则访问
iptables -A FORWARD -j REJECT #禁止其他未允许的规则访问

3、屏蔽IP

1
2
3
4
iptables -I INPUT -s 123.45.6.7 -j DROP #屏蔽单个IP的命令 
iptables -I INPUT -s 123.0.0.0/8 -j DROP #封整个段即从123.0.0.1到123.255.255.254的命令
iptables -I INPUT -s 124.45.0.0/16 -j DROP #封IP段即从123.45.0.1到123.45.255.254的命令
iptables -I INPUT -s 123.45.6.0/24 -j DROP #封IP段即从123.45.6.1到123.45.6.254的命令

4、查看已添加的iptables规则

1
iptables -L -n -v

5、删除已添加的iptables规则

将所有iptables以序号标记显示,执行:

1
iptables -L -n --line-numbers

比如要删除INPUT里序号为8的规则,执行:

1
iptables -D INPUT 8

参考文章:

Linux防火墙iptables规则设置:https://www.cnblogs.com/zaizai1573/p/11885271.html

FROM :blog.cfyqy.com | Author:cfyqy

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年1月6日01:43:09
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   linux 常用命令记录https://cn-sec.com/archives/722373.html

发表评论

匿名网友 填写信息