-
查看当前连接名称:
nmcli connection show
记录使用的连接名称(如eth0、enp1s0等)
-
配置HTTP/HTTPS代理:
nmcli connection modify <连接名称> proxy.method manual \ proxy.http <IP:端口> \ proxy.https <IP:端口> \ proxy.ignore-hosts "localhost,127.0.0.0/8"
-
设置认证(如有需要):
nmcli connection modify <连接名称> \ proxy.http-user <用户名> \ proxy.http-password <密码>
-
激活配置:
nmcli connection down <连接名称> && nmcli connection up <连接名称>
-
验证配置:
nmcli connection show <连接名称> | grep proxy
-
临时禁用代理:
nmcli connection modify <连接名称> proxy.method none
如何在 Rocky Linux 中使用 nmcli 配置和管理代理服务器?
在Rocky Linux中使用nmcli
配置代理服务器,可通过以下命令设置HTTP/HTTPS代理:
nmcli connection modify <连接名> proxy.http http://代理地址:端口
nmcli connection modify <连接名> proxy.https http://代理地址:端口
nmcli connection modify <连接名> proxy.method manual
nmcli connection down <连接名> && nmcli connection up <连接名>
延伸知识点:代理排除列表配置
通过proxy.ignore-hosts
参数可定义绕过代理的IP或域名。例如:
nmcli connection modify <连接名> proxy.ignore-hosts "192.168.1.0/24, .internal.com, localhost"
该参数支持:
- 通配符:
*.example.com
匹配子域名; - CIDR:
192.168.1.0/24
匹配整个子网; - 端口排除:需额外通过
no_proxy
环境变量设置。 生效后,访问ping internal.com
将直连,而curl https://external.com
仍走代理。使用nmcli connection show <连接名> | grep proxy
可验证配置。
更多回答
在Rocky Linux中使用nmcli connection modify
修改网络连接,添加代理服务器地址和端口,例如nmcli connection modify <连接名> proxy.http proxy://IP:端口
,完成后使用nmcli connection up <连接名>
激活设置即可。
在Rocky Linux中使用nmcli配置代理服务器时,建议优先通过NetworkManager实现系统级代理管理,而非依赖环境变量。可通过以下步骤:
- 连接识别:使用
nmcli connection show
确定目标网络连接名称(如eth0或ens192)。 - 代理配置:
sudo nmcli connection modify <CONNECTION_NAME> proxy.method manual \ proxy.http <代理IP:端口> \ proxy.https <代理IP:端口> \ proxy.ignore-hosts '<排除域名列表>'
- PAC模式:若需自动配置脚本,将
proxy.method
设为auto
并指定proxy.pac-url
- 激活配置:
nmcli connection up <CONNECTION_NAME>
架构设计层面,建议:
- 通过Ansible将配置模板化,实现批量节点部署
- 在容器化环境中通过CNI插件集成代理设置
- 结合firewalld创建代理专用zone增强安全控制
- 使用
nmstate
工具实现声明式网络配置管理
验证时需注意:network-manager
服务需保持运行,且代理策略需与SELinux上下文规则、系统服务启动顺序(通过systemd依赖)保持兼容。
在Rocky Linux用nmcli搞代理,先查当前连接名,比如用nmcli connection show
。然后改配置,比如连接叫eth0,就执行:sudo nmcli connection modify eth0 proxy.method manual proxy.http 代理IP:端口 proxy.https 代理IP:端口 proxy.ignore-hosts 忽略的域名
。改完重启连接sudo nmcli connection up eth0
。想关代理就把method改成none再重启。这样curl/wget就走代理了,简单吧?
是否考虑过使用环境变量或应用层代理配置,或许能更灵活地适配不同场景?
推荐
热门问答
部分内容依据人工智能生成,仅供参考,可能有误请注意甄别