端口是linux下应用软件因需要而开启的socket套接字,具有唯一性。端口可以查看、启动关闭、设置防火墙规则等。
创新互联是一家成都网站设计、网站制作,提供网页设计,网站设计,网站制作,建网站,定制设计,网站开发公司,自2013年创立以来是互联行业建设者,服务者。以提升客户品牌价值为核心业务,全程参与项目的网站策划设计制作,前端开发,后台程序制作以及后期项目运营并提出专业建议和思路。
1、端口查看
netstat -tln //表示已数字形式查看,正在监听的端口
netstat -ap //查看所有应用占用端口情况
2、启动停止
端口自己是不会停止和启动的,需要停止和启动的是端口对应的应用。
可以先找到端口,再对应PID,命令如下:
netstat -anp|grep 57069 //这个是要找的端口号
lsof -i:57069 //查找器PID信息
第三部杀死进程:图例里面没有在这里写上,kill -9 PID
3、屏蔽
linux下一般使用防火墙的filter规则 定义允许或者不允许进行屏蔽。对于filter一般只能做在3个链上:INPUT ,FORWARD ,OUTPUT。
例如设置在输入端屏蔽53端口:
iptables -A INPUT 1 -d 172.16.100.1 -p udp --dport 53 -j REJECT
-A 是增加规则,-d:表示匹配目标地址, -p udp表示UPD协议,--dPort 是端口53
这里表示在输入端目的地址是172.16.100.1的53端口被屏蔽
在
/etc/sysconfig/iptables
文件中添加就可以了。
至于看不到这个文件,你可以先添加完规则后
执行下
service
iptables
save
试试,应该就可以看到了。
有这个文件后,可以直接编辑这个文件,添加你想要的规则。
哥们,我知道在用户的家目录下,有个隐藏文件叫.bash_history,里面就是你所谓的执行命令的记录,你可以写一个脚本每次logout的时候删除这个文件,这样下次登录的时候就什么都没有呢。
楼主,shell 接收到一个 非内部命令 (如 ls, find)时,不是把命令提交给内核的,这个概念是错误的。 shell 应该是 fork 出一个进程,这个子进程调用 exec* 系列系统调用 (比如 execlp 等)来载入ls, find等可执行程序执行, 而此时的shell进程本身会 通过 wait 系统调用等待子进程完成。
由上可见,一个进行拦截的地方可以放在 exec 系列调用中,exec是实现在 glibc 里的,所以你只要下载 glibc (或者你们系统使用的 libc )的源码,在 exec 调用中加入你的拦截代码。 编译修改后的glibc,替换系统中的glibc即可。
另外要注意的是,除了shell,其他程序也可能使用 fork+exec 来执行某些命令,如果不想拦截这种情况,在拦截时需判断一下当前进程的父或祖进程,看看是否是shell进程。
最后,glibc实在是太重要了,是所有程序的基础,改动需小心。