Ubuntu Linux配置方法

1. 查看防火墙状态

进入root权限

ufw status verbose

状态:不活动

2.先把ssh的权限打开

这么做的目的是防止把自己关在外面了,如果你是其他端口,记得把22换成你实际的ssh端口好。

ufw allow 22

防火墙规则已更新

规则已更新(v6)

3.打开防火墙

完成以上两步后,可以打开防火墙:

ufw enable

此命令可能会中断目前的 ssh 连接。要继续吗 (y|n)? y

在系统启动时启用和激活防火墙

4.添加规则

根据需要添加规则,根据你现在服务器打开的端口,可以将规则添加进去,如果需要查看当前的端口开启情况,可以用如下命令:

netstat -tnlp

添加防火墙规则(xxx表示端口号):

ufw allow xxx

删除已经有的防火墙规则:

ufw delete allow xxx

拒绝访问规则:

ufw deny xxx

缺省的规则:

ufw default deny

5.修复docker缺省打开防火墙问题

在实际使用过程中,可能会采用docker容器的方式,如果没有设置的情况下,可能会造成防火墙已经做了设置但没有生效。比如已经拒绝了80端口访问,但是远程用 curl照常可以访问的情况。原因就是docker里面设置了自动添加防火墙规则,导致只要docker有映射端口,防火墙就自动打开对应端口的问题。

为解决这个问题需要在docker配置文件下做出修改:

1)修改docker的配置文件

修改/etc/docker/daemon.json(若没有就新建一个):

vi /etc/docker/daemon.json

添加如下内容:

{

"iptables": false

}

2)重启docker:

systemctl restart docker

再次访问,会发现防火墙已经生效了。

6.设置无法ping主机

为了有效保护自己的主机,可以让远程终端无法ping通自己的主机,这个需要单独进行设置,并且ipv4和ipv6都需要进行设置:

1)ipv4设置

编辑文件:

vi /etc/ufw/before.rules

找到这一行,把最后的单词由ACCEPT修改成DROP:

-A ufw-before-input -p icmp --icmp-type echo-request -j DROP

修改完成后,保存并且退出;

2)修改ipv6设置

编辑文件:

vi /etc/ufw/before6.rules

类似,找到这一行,并最后的单词由ACCEPT修改成DROP:

-A ufw6-before-input -p icmpv6 --icmpv6-type echo-request -j DROP

保存并且退出;

3)重新加载防火墙

ufw reload

再次测试会发现,无法ping通主机了,至此防火墙基本设置全部完成。

相关推荐
EMTime5 小时前
Docker运行OpenWRT
运维·docker·容器
lolo大魔王6 小时前
Linux 文件系统超全面详解(原理、结构、挂载、分区、inode、日志、管理命令)
linux·运维·服务器
磊 子7 小时前
详细讲解一下epoll
linux·io·epoll·io多路复用
printfLILEI8 小时前
php中的类与对象以及反序列化
linux·开发语言·php
zyl837218 小时前
Docker 使用手册
运维·docker·容器
古月方枘Fry8 小时前
MGRE实验
运维·服务器
叠叠乐9 小时前
redmi k90 pro max 强解BL,刷海外rom, 并刷入sukisu ultra
linux
stolentime9 小时前
FreeDomain 本地开发环境快速搭建指南
运维·服务器·网络
xiaoye-duck10 小时前
《Linux系统编程》Linux 进程间通信之管道基础解析:从匿名管道原理到基于管道的进程池实现
linux