macos – 连接到EAP-TLS wifi网络os x终端

我目前正在担任学校技术人员,我正在编写一个
shell脚本,它将自动将学校无线配置为Mac,以便为我将要配置的多个BYOD和员工Mac自动执行此过程.这涉及到

>将安全证书导入钥匙串
>在此对话框中插入以下设置以连接到网络
>创建一个名为“学校”的新网络位置
>通过“自动代理配置”下的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.

现在,我的问题如下:

>如何在不使用GUI脚本的情况下通过10.7及更高版本的OS X终端将.networkconnect / .mobileconfig文件导入网络设置?
>通过终端导入后如何连接到网络?

最佳答案 要导入.mobileconfig命令,请使用/usr/bin/profiles命令. networksetup仅用于导入10.6及更早版本的系统配置文件.

profiles -I -F filename.mobileconfig

导入mobileconfig时,它将自动尝试连接,但配置文件(与网络设置不同)AFAIK无法更改SSID的优先级顺序.

这不是您在此之后所做的,但如果您的Mac是AD域的成员且具有AD集成CA,则可以使用mactls shell脚本自动发布证书以及连接配置文件.它也可能是一个有用的比较系统配置文件方法在10.6和10.7之间的差异.

http://sourceforge.net/p/mactls/

点赞