我目前担任学校技术员,正在编写一个Shell脚本,用于自动配置学校的无线网络,以便为我将要配置的多个BYOD和员工Mac电脑自动化此过程。这包括:
尝试让对话框弹出来的方法没有成功。我很清楚这个隐藏的问题。
将安全证书导入到钥匙串中
在此对话框中插入以下设置以连接到网络
创建名为“school”的新网络位置
通过“自动代理配置”下的wpad文件配置代理
如果是教师的笔记本电脑并且他们请求,则创建名为“YouTube”的新位置,并在“Web代理”下输入允许访问YouTube的代理设置
我采取的第一种方法是通过security命令导入安全证书(根证书颁发机构和中间证书颁发机构)。然而,我意识到没有办法配置弹出的框,该框在首次连接时配置WiFi设置(选择EAP-TLS作为连接模式、证书并插入用户名)。使用
networksetup -setairportnetwork en1 eduSTAR
尝试让对话框弹出来的方法没有成功。我很清楚这个隐藏的问题。
airport
这个命令可以执行,但是似乎没有明显的方法通过这个命令连接到wifi网络。我能想到的另一种方法是使用AppleScript的GUI脚本,但我试图避免使用这种方法,因为OS版本之间的UI更改会使脚本无法使用。
今天,我发现我可以通过网络设置的GUI导入.mobileconfig文件,这将处理所有事情(包括wdap代理配置),在此之前我还发现networksetup命令有一个选项可以导入802.1x配置文件。
networksetup -import8021xProfiles [service path]
网络设置中的导入选项不能直接导入 .mobileconfig 文件,但是我可以通过双击文件本身来导入设置。事实证明,实际的文件是一个 .networkconnect 文件,但这一点无关紧要,因为显然,从10.7开始,该命令不再受支持。
Use a configuration profile to install 802.1X profiles on the system.
** Error: This command is no longer supported.
现在,我的问题如下:
在10.7及以上版本的OS X终端中,如何通过不使用GUI脚本的方法导入.networkconnect/.mobileconfig文件到网络设置中?
在终端中导入后如何连接到网络?