Ubuntu 帮助 wiki 中的此页面描述如何使用以下命令来更新防火墙以允许某些内容通过:
iptables -A INPUT -p tcp --dport 631 -j ACCEPT
要在每次启动/重启系统后应用此规则,请使用/etc/rc.local
。
这是否意味着编辑/etc/rc.local file
?我该怎么做?
答案1
Ubuntu 使用 CUPS 提供打印服务。在现代设备上,CUPS 通常使用 IPP 通过端口 631 与打印机通信。
选项1:Scott 关于命令行 ufw 用法的说法是正确的
sudo ufw allow 631/tcp
选项 2:安装 Gufw,它是 ufw 的 GUI。在 Gufw 中添加防火墙规则以允许网络打印。
sudo apt install gufw
由于许多用户不知道需要为应用程序或服务打开哪些端口,因此使用 Gufw 很有帮助,因为它已经对端口进行了分类,并且可以按名称或主题进行搜索。
例如,使用 Gufw Preconfigured 选项卡添加规则可让用户输入“打印”等过滤词,然后会自动显示 CUPS。过滤 UX 并不完美,但它为初学者提供了额外的备忘单。
我的信誉点数不足以发布图片,因此这里有一个我从 Gufw 对话框(相当于命令行)截取的屏幕截图的链接。Gufw 规则对话框图片
启用和禁用防火墙只需单击应用程序中的一两个按钮即可。用户可以阅读官方帮助文档以了解任何一般使用问题:Gufw-社区帮助 Wiki
答案2
我所需要的是
sudo ufw allow 631/tcp
代替
iptables -A INPUT -p tcp --dport 631 -j ACCEPT
我现在终于可以在打开防火墙的情况下进行打印了。
答案3
该文件/etc/rc.local
在每个多用户运行级别结束时执行,因此它将在系统启动期间运行。您可以rc.local
使用文本编辑器编辑文件(您需要超级用户权限才能进行此操作)并添加 iptables 规则(行上方exit 0
)。
例如,如果你使用 vim,那么你可以这样做
sudo vim /etc/rc.local