我想从命令行控制网络管理器。这在 Ubuntu 10.04 中运行良好(使用 cnetworkmanager,nmcli 是另一种可能的选择)。
但是,自从升级到 Ubuntu 10.10 后,当我尝试从SSH 终端内激活连接时,会引发 D-Bus 异常:
org.freedesktop.NetworkManager.PermissionDenied:无权控制网络。
它可能与 /etc/dbus-1/system.d/NetworkManager.conf 有关;还有什么地方可以寻找线索?
仅当我通过ssh进入机器时才会出现此问题;在 gnome 会话中,我没有遇到相同的问题——在这两种情况下都使用相同的(管理员)用户帐户。
我只想为 LAN 中的 Fedora 19 机器设置一个静态 IP 地址。我习惯使用/etc/network/interfacesdebian,但该文件在此处不存在。
在谷歌搜索了一下之后,我发现了一个小教程,它告诉人们通过 systemctl 禁用 NetworkManager 并启用网络。之后,您可以在名为 .zip 的文件中配置静态 IP 地址/etc/sysconfig/network-scripts/ifcfg-*interfacename*。
这是我的第一个问题:我找到了一个文件,其中显示了我的接口的 MAC 地址,ifconfig但 ifcfg- 之后的名称与 ifconfig 中的名称不匹配。为什么会这样?
我的第二个问题是关于使用 NetworkManager.service 或 network.service。我在论坛上读到,出于兼容性原因,network.service 仍然包含在内,可能很快就会被排除在外。如果network.service 很快就会被NetworkManager.service 取代,我是不是应该选择NetworkManager.service 来配置我的网络接口?如果是,我如何从 shell 使用 NetworkManager 做到这一点?
编辑:
以下是要求的输出:
[root@bitch /]# ifconfig
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 97 bytes 12042 (11.7 KiB)
RX errors 0 dropped 0 overruns 0 …Run Code Online (Sandbox Code Playgroud) 我们的企业无线网络使用带有 RSA 令牌的不断变化的密码。因此,每次我们需要连接到无线网络时,我们都需要从 RSA 令牌中输入一个新密码。为了获得额外的乐趣,连续几次使用错误的密码会导致用户帐户被锁定。
网络管理器会自动存储和重复使用密码,最终结果是不断锁定我的帐户。
有什么方法可以防止它为该网络存储我的密码?
或者也许以某种方式让侏儒钥匙圈不存储它?
我有一台运行 Fedora 28 的服务器。我使用 nmcli 创建了六个连接。我希望每次系统启动时都按特定顺序启动这些连接。我该怎么做呢?
当我查看 NetworkManager 参考手册时,我注意到了 connection.autoconnect-priority 设置,内容如下:
“自动连接优先级。如果连接设置为自动连接,则优先连接具有更高优先级的连接。默认为 0。更高的数字意味着更高的优先级。”
这并没有听起来像后,我的功能。我不想在不激活其余五个连接的情况下激活一个连接。我希望所有六个连接都按特定顺序激活。
我考虑过将nmcli con up命令添加到我的 crontab 并在启动时调用它的想法,但我想知道是否存在更“优雅”的解决方案。
再会。
我正在尝试使用 Ubuntu 为 Fortivpn 提供的软件包。据我所知,它是一个包装 openfortivpn 的 NetworkManager 插件。
我遇到的问题是,我似乎找不到任何有关将“trusted-cert”标志添加到配置中的文档(我已确定该标志位于 /etc/NetworkManager/system-connections/MyVpnName)。
如果有人能指出我应该在哪里添加这个标志,那就太好了。我试过在该[vpn]部分下添加它,但这没有效果。
对于上下文:如果没有这个标志,我会收到一个错误:Gateway certificate validation failed, and the certificate digest in not in the local whitelist. If you trust it, rerun with: --trusted-cert ... or add this line to your config file: 'trusted-cert = ...。
我已经测试了直线命令行openfortivpn,它工作得很好。这似乎纯粹是我无法弄清楚如何让 NetworkManager 将标志传递给 openfortivpn。
谢谢大家 :)
我在笔记本电脑上使用 NetworkManager (Arch Linux) 来连接无线网络。我使用官方的 GNOME GUI。一切正常,但半小时后网络仍然连接,但默认网关只是从路由表中消失。
? log ip r
10.135.1.0/24 dev wlan0 proto kernel scope link src 10.135.1.3 metric 303
10.135.1.3 via 127.0.0.1 dev lo metric 303
Run Code Online (Sandbox Code Playgroud)
默认网关应该是 10.135.1.138,我实际上可以 ping 它。如果我重新连接,重新启动 NetworkManager 或使用“ip r”手动添加它,我可以恢复它,但它会在半小时后再次消失。
我尝试了两种不同的 WiFi 驱动程序,两者都发生了。我尝试使用 wicd 而不是 NetworkManager,它似乎解决了问题。但是,由于其他几个原因,我对 wicd 并不满意,而且我很想知道 NetworkManager 有什么问题。我检查了在 NetworkManager 运行时 netctl 和 wicd 是否被禁用(是否有任何其他服务可能会干扰它?)。
这是过去一小时的日志。不过,我找不到任何可疑之处:
Jan 18 17:36:39 tarsonis NetworkManager[2382]: <info> (wlan0): device state change: prepare -> config (reason 'none') [40 50 0]
Jan 18 17:36:39 tarsonis NetworkManager[2382]: <info> Activation (wlan0/wireless): connection …Run Code Online (Sandbox Code Playgroud) 我正在尝试调试由 NetworkManager 提供支持的无线连接。wpa_supplicant当我使用我编写的自定义文件提供数据时它可以工作wpa_supplicant.conf,但是当我使用相同的参数配置 NetworkManager 时它不起作用。我想知道 NetworkManager 提供给 wpa_supplicant 的确切参数,以便与我的自定义配置进行比较。
我可以连接到wpa_supplicantusingwpa_cli并且可以检索每个参数。但我希望有一种方法可以立即转储整个配置,或者至少有一种方法可以获取我可以获取的所有参数的列表。
我的系统正在运行带有最新软件包的 Debian sid。
在我的 Cinnamon (linux) 桌面上,我在 NetworkManager 中设置了一个 openconnect VPN 连接。连接时,我似乎没有任何问题:连接已建立,网络流量通过它路由。但是,我的系统日志包含一个令人担忧的条目:
openconnect[2935]: SSL negotiation with (...)
openconnect[2935]: Server certificate verify failed: signer not found
openconnect[2935]: Connected to HTTPS on (...)
openconnect[2935]: Got CONNECT response: HTTP/1.1 200 OK
Run Code Online (Sandbox Code Playgroud)
我尝试openconnect从命令行使用,但它不会打印任何有关证书问题的信息(即使在详细模式下)。此外,该站点在 Firefox 或使用中没有证书错误wget(我不知道 openconnect 使用哪个证书存储......)。
这是否意味着该连接容易受到中间人攻击?如果无法验证证书,为什么在连接和发送我的凭据之前没有要求我信任证书的确认提示?为什么仅在使用 NetworkManager 连接时才会出现此问题?
的命令行openconnect是
/usr/sbin/openconnect --servercert sha1:bee140657db50a73ee69f47fee9e4d670905206e --syslog --cookie-on-stdin --script /usr/lib/NetworkManager/nm-openconnect-service-openconnect-helper --interface vpn0 (ip):443
Run Code Online (Sandbox Code Playgroud)
如果我没有在 NetworkManager 中明确设置 CA 证书,也会出现警告。
我的公司生产通过 USB 连接的物联网设备,其中包含一个蜂窝调制解调器模块,其中包含一个 DHCP 服务器。我们有一个运行 Ubuntu 14.04 的生产测试服务器和另一个运行 Ubuntu 16.04 的服务器。当物联网设备的蜂窝调制解调器开机时,服务器的 dhclient 从嵌入在蜂窝调制解调器模块中的 DHCP 服务器获取 IP 地址。
昨天,14.04 服务器耗尽了 inode , dhclient-<uuid>-usbXX.lease因为/var/lib/NetworkManager/.
由于需要让它运行用于生产目的,我无法全面检查该系统,但是,这些租赁文件看起来可以追溯到大约 14 个月前的服务器调试。也就是说,NetworkManager 和/或 dhclient(来自 isc-dhcp-client 包)似乎从未删除过任何客户端租用文件。
使问题更加复杂的是,每次蜂窝调制解调器设备开机时都会创建一个新的租用文件。(物联网设备使蜂窝调制解调器保持关闭状态以节省电池电量,仅在需要时才将其打开。测试包括多次打开和关闭调制解调器。)
我sudo apt-get source isc-dhcp-client检查了源代码,似乎从来没有删除租赁文件的代码。事实上,我的笔记本电脑(Ubuntu 14.04)有可追溯到其调试的租赁文件。(我已经连接了一些 IoT 设备,以及各种其他以太网 USB 适配器。)
租赁文件有一个非常合理的 24 小时到期时间。
我正在研究如何针对我们的 IoT 设备取消配置 dhclient,但是,如果我们决定测试单元数据连接,我宁愿不这样做。
有没有办法让 dhclient 和/或 NetworkManager 删除旧的客户端租赁文件?
我可以设置一个 cron 作业来处理这个问题,但这似乎应该是系统的一部分。我就是找不到它。我用谷歌搜索,搜索这里/StackOverflow,并阅读 dhclient 和 NetworkManager 文档。
注意:我没有足够的声誉来创建标签 dhclient,所以我用 dhcp 代替。
每次我的计算机在 Ubuntu 中连接到网络时,让脚本运行的好方法是什么?我会以某种方式使用 dbus 来做到这一点吗?
背景:当我在火车上时,我运行一个简短的 Perl 脚本来单击启动页面上的一个按钮。这样我就可以立即使用互联网,而无需手动访问毫无意义的网站。我的脚本是一个近乎完美的解决方案,但如果它可以在我连接到网络时自动运行,那就太完美了。
我最近安装了 Arch Linux,但在设置网络管理器时遇到了问题。我能够sudo wifi-menu并连接到路由器,但这些设置不会通过重新启动保留。
我能做些什么来解决这个问题?
我的主 PC 在华硕 M2npv-vm 上安装了 Athlon X2 4600+。运行 Ubuntu 已经很长时间了。今天系统锁定,我不得不重新设置。从那时起它就不会连接到路由器或电缆调制解调器。我可以将另一台 PC 连接到路由器,这样看起来没问题。
我可以做些什么来测试来自 Ubuntu 的网络连接?它甚至没有获得IP。
我想这可能是硬件中的某些东西已经死亡,但想首先消除其他可能性。
我正在运行 14.04.5,不知何故我的系统进入了一种状态,其中我的 nVidia 驱动程序、lightdm 和所有窗口管理器似乎都对损坏的图形系统做出了贡献。所以,我在保留基本系统的同时卸载了所有这些。我现在可以启动到提示。
但是,我不再有有效的有线网络接口。
我尝试将我的可启动 USB 驱动器添加为 Apt 存储库并进行更新,但似乎无法找到/安装任何内容。所以,我把它拿出来了。这是说我目前没有办法安装任何软件包。
我看到 e1000e 内核模块已加载,因此我的网络接口应该可以访问。我尝试删除 /etc/udev/rules.d/70-persistent-net.rules(暗示它可能在这里工作:https ://serverfault.com/a/623973/93185 )然后重新启动,但没有任何改变。
我很感激一些见解。谢谢。
networkmanager ×13
linux ×8
networking ×6
ubuntu ×4
certificate ×2
vpn ×2
arch-linux ×1
dbus ×1
debian ×1
dhcp ×1
fedora ×1
fedora-19 ×1
routing ×1
ssh ×1
ssl ×1
ubuntu-14.04 ×1
ubuntu-16.04 ×1
wpa ×1