今天发现 terminal sudo 命令可以使用 touch ID 认证

101 天前
 NASK

刚用 macOS 一个月,每次 sudo 输密码很麻烦,今天搜了一下,果然有办法使用 touch ID 认证,Awesome😋 方法如下:

创建配置文件

```markdown
sudo cp /etc/pam.d/sudo_local.template /etc/pam.d/sudo_local

编辑刚刚创建的配置文件

sudo vim /etc/pam.d/sudo_local

取消注释#auth sufficient pam_tid.so


- #auth       sufficient     pam_tid.so
+ auth       sufficient     pam_tid.so

2275 次点击
所在节点    macOS
7 条回复
kqq19930511
101 天前
之前写了个脚本,发现每次系统更新完之后 sudo 就被还原了,自动检测是否支持 touch id ,可以参考一下

```
#!/bin/bash
AUTH_FINGERPRINT='auth sufficient pam_tid.so'
FILE=/etc/pam.d/sudo
if [[ `sed -n '2p' $FILE` == $AUTH_FINGERPRINT ]];then
echo "terminal fingerprint already added `date +'%Y/%m/%d %H:%M:%S'`"
else
sudo sed -i '.bak' "2i\\
$AUTH_FINGERPRINT\\
" $FILE
fi
```
NASK
101 天前
@kqq19930511 我看你的脚本检测的 sudo 文件的内容进行修改,可以试试我这种,理论上升级系统后不会失效。
因为 macOS 的/etc/pam.d/sudo_local.template 文件有这样一句注释
#sudo_local: local config file which survives system update and is included for sudo
wuxie01
101 天前
好用! 赞
Tiande
101 天前
学习了
hwdq0012
101 天前
echo -n "passwd" | sudo -S xxx
这个指纹就代替不了了吧,虽然这是很不安全的做法,但是有一些情景还是适用的
kqq19930511
101 天前
@NASK #2 我试一下,下次看看系统升级后有没有问题
bao3
100 天前
同楼上,把那一条存到 iterm2 的作弊条里,直接发送就行

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1121381

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX