有没有办法使登录密码和sudo的密码不一样?

系统安装、升级讨论
头像
fanhe
帖子: 2357
注册时间: 2007-03-24 23:45
送出感谢: 0
接收感谢: 9 次

有没有办法使登录密码和sudo的密码不一样?

#1

帖子 fanhe » 2010-11-02 16:06

我想使登录密码复杂点,然后sudo就简单点
因为反正都登录了,sudo就放松一下,但是不能不要密码,sudo不要密码我知道怎么搞
就是想知道sudo的密码能否跟登录密码不一样
头像
懒蜗牛Gentoo
论坛版主
帖子: 7284
注册时间: 2007-03-02 17:36
送出感谢: 0
接收感谢: 95 次

Re: 有没有办法使登录密码和sudo的密码不一样?

#2

帖子 懒蜗牛Gentoo » 2010-11-02 16:15

除非……把你自己从sudo组里删除,那样sudo 的时候是输入root的密码。(印象中好象是啊,你再查查)
然后给root个简单的密码……不过这样似乎更危险啊
虽然世上没有完美的东西,但这并不影响我们追求完美,因为只有偏执狂才TMD能成功。
10.04新手入门——笨兔兔讲述自己的故事
头像
Kandu
帖子: 108
注册时间: 2008-12-24 12:02
送出感谢: 1 次
接收感谢: 4 次
联系:

Re: 有没有办法使登录密码和sudo的密码不一样?

#3

帖子 Kandu » 2010-11-03 12:20

可以,我寫了一個微型 sudo ,叫做 ksudo 。不像 sudo 只是從 /etc/shadow 中讀資料驗證,你可以自己配置要驗證的密碼。
http://machinelife.org/osc/ksudo.htm
有兩個配置文件。一個是 /etc/ksudoers 裡面每行列出一個用戶名,不在裡面列出的用戶無法使用 ksudo。另一個就是 ~/.ksudorc 裡面會用 md5 加密保存自定義的密碼。

為了安全起見,第一次配置以及以後對密碼的修改都是讀 /etc/shadow 來驗證密碼,所以配置密碼都得用普通的linux帳號密碼。
要修改 ksudo 密碼的話,直接刪了 ~/.ksudorc 就行。它檢測到文件不合法或者不存在,都會讓你再配置密碼的,再一次 /etc/shadow 驗證而已。
大概演示下好了。紅色為提示和敲入的命令,藍色是註解,黑色為普通輸出:

[kandu@bomb ~]$ cd ksudo/
[kandu@bomb ksudo]$ ls
ksudo.pas Makefile
[kandu@bomb ksudo]$ sudo make install make install 進行安裝
fpc ksudo 開始編譯並安裝 ksudo
Free Pascal Compiler version 2.4.0 [2010/01/01] for i386
Copyright (c) 1993-2009 by Florian Klaempfl
Target OS: Linux for i386
Compiling ksudo.pas
ksudo.pas(155,30) Warning: Local variable "list" does not seem to be initialized
ksudo.pas(202,11) Warning: Symbol "Shell" is deprecated
ksudo.pas(208,11) Warning: Symbol "Shell" is deprecated
Linking ksudo
/usr/bin/ld: warning: link.res contains output sections; did you forget -T?
217 lines compiled, 0.1 sec
3 warning(s) issued
mkdir -p /usr/local//bin
install -D -o root -m 6755 ksudo /usr/local//bin/
[kandu@bomb ksudo]$ ksudo ls /root 試試用 ksudo 來列出 /root 目錄
You are not in the ksudoers file 結果說我沒在列表中,所以
[kandu@bomb ksudo]$ sudo sed -i '$a kandu' /etc/ksudoers 在配置文件末尾添加了自己的用戶名
[kandu@bomb ksudo]$ ksudo ls /root 再來
You are seeing this message because your ksudo config is incorrect 因為並沒有個人配置存儲自定義的密碼,所以
Enter your user password: 用戶密碼 你的普通用戶密碼,會用這個密碼和 /etc/shadow 中的進行校驗
Enter new ksudo password: hi 設定你的 ksudo 密碼。設個簡單的吧,比如 'hi'
Desktop Downloads Media 然後就有了 root 權限,打印出了 /root 目錄


[kandu@bomb ksudo]$ ksudo ls /root/ 當以後再用 ksudo 的時候
Enter your ksudo password: hi 只需要輸入你的 ksudo 密碼就行了
Desktop Downloads Media 同樣取得權限,打印出了 /root 目錄
[kandu@bomb ksudo]$


這裡下載。執行 sudo make install 就行了。或者自定義 sudo make prefix=自己喜歡的目錄 install 也行。
上次由 Kandu 在 2011-08-27 13:43,总共编辑 3 次。
头像
fanhe
帖子: 2357
注册时间: 2007-03-24 23:45
送出感谢: 0
接收感谢: 9 次

Re: 有没有办法使登录密码和sudo的密码不一样?

#4

帖子 fanhe » 2010-11-07 2:13

Kandu 写了:可以,我寫了一個微型 sudo ,叫做 ksudo 。不像 sudo 只是從 /etc/shadow 中讀資料驗證,你可以自己配置要驗證的密碼。
http://machinelife.org/osc/ksudo.htm
有兩個配置文件。一個是 /etc/ksudoers 裡面每行列出一個用戶名,不在裡面列出的用戶無法使用 ksudo。另一個就是 ~/.ksudorc 裡面會用 md5 加密保存自定義的密碼。

為了安全起見,第一次配置以及以後對密碼的修改都是讀 /etc/shadow 來驗證密碼,所以配置密碼都得用普通的linux帳號密碼。
要修改 ksudo 密碼的話,直接刪了 ~/.ksudorc 就行。它檢測到文件不合法或者不存在,都會讓你再配置密碼的,再一次 /etc/shadow 驗證而已。
大概演示下好了。紅色為提示和敲入的命令,藍色是註解,黑色為普通輸出:

[kandu@bomb ~]$ cd ksudo/
[kandu@bomb ksudo]$ ls
ksudo.pas Makefile
[kandu@bomb ksudo]$ sudo make install make install 進行安裝
fpc ksudo 開始編譯並安裝 ksudo
Free Pascal Compiler version 2.4.0 [2010/01/01] for i386
Copyright (c) 1993-2009 by Florian Klaempfl
Target OS: Linux for i386
Compiling ksudo.pas
ksudo.pas(155,30) Warning: Local variable "list" does not seem to be initialized
ksudo.pas(202,11) Warning: Symbol "Shell" is deprecated
ksudo.pas(208,11) Warning: Symbol "Shell" is deprecated
Linking ksudo
/usr/bin/ld: warning: link.res contains output sections; did you forget -T?
217 lines compiled, 0.1 sec
3 warning(s) issued
mkdir -p /usr/local//bin
install -D -o root -m 6755 ksudo /usr/local//bin/
[kandu@bomb ksudo]$ ksudo ls /root 試試用 ksudo 來列出 /root 目錄
You are not in the ksudoers file 結果說我沒在列表中,所以
[kandu@bomb ksudo]$ sudo sed -i '$a kandu' /etc/ksudoers 在配置文件末尾添加了自己的用戶名
[kandu@bomb ksudo]$ ksudo ls /root 再來
You are seeing this message because your ksudo config is incorrect 因為並沒有個人配置存儲自定義的密碼,所以
Enter your user password: 用戶密碼 你的普通用戶密碼,會用這個密碼和 /etc/shadow 中的進行校驗
Enter new ksudo password: hi 設定你的 ksudo 密碼。設個簡單的吧,比如 'hi'
Desktop Downloads Media 然後就有了 root 權限,打印出了 /root 目錄


[kandu@bomb ksudo]$ ksudo ls /root/ 當以後再用 ksudo 的時候
Enter your ksudo password: hi 只需要輸入你的 ksudo 密碼就行了
Desktop Downloads Media 同樣取得權限,打印出了 /root 目錄
[kandu@bomb ksudo]$

附件裡面已經有編譯好的 i386 版了。直接執行 sudo make install 就行了。也帶了一個 amd64 版,要裝這個的話,把 ksudo.amd64 改為 ksudo 再安裝即可。
或者自定義 sudo make prefix=自己喜歡的目錄 install 也行。
居然是pas代码啊,我还想研究下代码,这下看不懂了

我就猜sudo没法完成的。其实我想要linux下的uac,不过uac没法在终端使用。
所以我就提出了这个问题
头像
Kandu
帖子: 108
注册时间: 2008-12-24 12:02
送出感谢: 1 次
接收感谢: 4 次
联系:

Re: 有没有办法使登录密码和sudo的密码不一样?

#5

帖子 Kandu » 2011-08-09 9:07

改進了下密碼輸入部分,應該夠用了。連結還是不變
头像
jarlyyn
论坛版主
帖子: 4671
注册时间: 2006-04-12 18:54
送出感谢: 0
接收感谢: 6 次
联系:

Re: 有没有办法使登录密码和sudo的密码不一样?

#6

帖子 jarlyyn » 2011-08-09 9:10

换成su不就行了么

话说楼主居然经常用sudo?
头像
monk
帖子: 19507
注册时间: 2010-01-28 10:45
送出感谢: 6 次
接收感谢: 33 次

Re: 有没有办法使登录密码和sudo的密码不一样?

#7

帖子 monk » 2011-08-09 10:10

老手了就用root登陆吧

*********宁静致远*********
如果我说的有什么不对,请看签名第一行
头像
qy117121
论坛版主
帖子: 49900
注册时间: 2007-12-14 13:40
系统: Winbuntu
来自: 志虚国乌由市
送出感谢: 17 次
接收感谢: 335 次
联系:

Re: 有没有办法使登录密码和sudo的密码不一样?

#8

帖子 qy117121 » 2011-08-09 10:11

jarlyyn 写了:换成su不就行了么

话说楼主居然经常用sudo?
:em11
渠月 · QY    https://vz.rs/u
本人只会灌水,不负责回答问题

无聊可以点一下→ http://u.nu/ubuntu
头像
jarlyyn
论坛版主
帖子: 4671
注册时间: 2006-04-12 18:54
送出感谢: 0
接收感谢: 6 次
联系:

Re: 有没有办法使登录密码和sudo的密码不一样?

#9

帖子 jarlyyn » 2011-08-09 10:25

还有就是记得gksu/kdesu可以把密码保存在de的keyring里面?

这个应该是能满足楼主要求的,最符合正常逻辑的做法吧?

跑终端的话直接用gksu启动个root终端就好了
头像
monk
帖子: 19507
注册时间: 2010-01-28 10:45
送出感谢: 6 次
接收感谢: 33 次

Re: 有没有办法使登录密码和sudo的密码不一样?

#10

帖子 monk » 2011-08-09 10:26

有root终端啊 :em04

*********宁静致远*********
如果我说的有什么不对,请看签名第一行
头像
cuihao
帖子: 4793
注册时间: 2008-07-24 11:33
来自: 郑州
送出感谢: 1 次
接收感谢: 89 次
联系:

Re: 有没有办法使登录密码和sudo的密码不一样?

#11

帖子 cuihao » 2011-08-09 12:49

蛋疼方案:
:em20 登陆用一个用户,shell用另一个用户,于是sudo密码不一样了。
求人不如求它仨: 天蓝的Wiki 屎黄的Wiki 绿
Site: CUIHAO.TK    Twitter: @cuihaoleo
Machine: Athlon64 X2 5200+ / 2x2GB DDR2-800 / GeForce GTS 450
AD: ~まだ見ぬ誰かの笑顔のために~
头像
Kandu
帖子: 108
注册时间: 2008-12-24 12:02
送出感谢: 1 次
接收感谢: 4 次
联系:

Re: 有没有办法使登录密码和sudo的密码不一样?

#12

帖子 Kandu » 2011-08-09 13:03

cuihao 写了:蛋疼方案:
:em20 登陆用一个用户,shell用另一个用户,于是sudo密码不一样了。
無敵的好想法 :ema4
头像
photor
论坛版主
帖子: 11003
注册时间: 2008-04-26 12:41
送出感谢: 8 次
接收感谢: 36 次

Re: 有没有办法使登录密码和sudo的密码不一样?

#13

帖子 photor » 2011-08-09 14:24

cuihao 写了:蛋疼方案:
:em20 登陆用一个用户,shell用另一个用户,于是sudo密码不一样了。
怎么实现? :em09
头像
Kandu
帖子: 108
注册时间: 2008-12-24 12:02
送出感谢: 1 次
接收感谢: 4 次
联系:

Re: 有没有办法使登录密码和sudo的密码不一样?

#14

帖子 Kandu » 2011-08-11 20:35

疏忽了。本來是在 archlinux 下寫的,在 debian 系的話,要改下。
[diff]
--- ksudo.pas 2011-08-11 20:29:52.681986734 +0800
+++ ksudo.pas.new 2011-08-11 20:31:33.689987011 +0800
@@ -34,8 +34,8 @@


function crypt(key, salt: PChar): PChar; cdecl; external 'crypt';
- function getpwuid(uid: LongWord): PPasswd; cdecl; external 'shadow';
- function getspnam(name: PChar): PSpwd; cdecl; external 'shadow';
+ function getpwuid(uid: LongWord): PPasswd; cdecl; external;
+ function getspnam(name: PChar): PSpwd; cdecl; external;


var
[/diff]
上次由 Kandu 在 2011-08-27 13:36,总共编辑 1 次。
jtshs256
论坛版主
帖子: 22322
注册时间: 2010-07-19 21:41
系统: OS X
送出感谢: 2 次
接收感谢: 27 次

Re: 有没有办法使登录密码和sudo的密码不一样?

#15

帖子 jtshs256 » 2011-08-11 20:50

额,我都 sudo 不用密码的……懒啊…… :em20
NO DO NO DIE
http://a/%%30%30
回复

回到 “系统安装和升级”