1
billlee 2014-10-12 13:39:19 +08:00 1
1. 不行。只有在证书的用途里有 CA 这一项的,才能用来签发证书。
|
2
whywhywhy 2014-10-12 13:45:30 +08:00 2
证书分两种 一种是颁发证书的 一种是求颁发证书的
1.你要领个ssl证书,就要先生成私钥,这是你的密码,不要公开 2.用私钥生成一个请求,简单说就是做个表格,让领导给你签名 3.证书颁发机构同意之后,在上面签名了,这就是数字签名,你拿着它大家就承认你是领导认可的可信任的人 你也看到了,你的角色是求别人给你签名,你自己是不能签名了,签名了大家都不认你 如果你也想给别人签名,那么你就要申请成为CA,也就是领导,这样你就可以随意发任何一个域名的证书啦! 当然啦,你要是敢乱发证书,就等着被吊销,或者进入黑名单,而且…… 并非是你拿到领导的签名就可以签给别人的,因为指纹仿造不了,你怎么签都是有区别的。所以你要跟领导说,你也要当领导,就要写个当领导的申请,让领导签名,这样就是领导的下属了。你的领导承认你以他下属的名义来颁发证书 1.生成密钥,生成CA请求 2.把请求给你领导签名 3.给大家颁发签名 4.你签名里不光代表你自己,还代表你的领导哟! 那么你不想成为领导的下属咋办呢?那就自己成为顶级领导,让大家都信任你,你就可以为所欲为了! |
3
whywhywhy 2014-10-12 13:51:22 +08:00 2
综上所述,数字签名证书是分为2部分的,一部分是信息,就是说你是谁,你的证书是谁颁发的,第二部分就是签名了,你的证书上要有大家都承认的签名才会被信任(也就是说大家都知道的那个领导,或者领导其中的一个)
其中GOOGLE也好,CF也好,自己首先努力成为领导,才能随意颁发证书的。 当然这样的随意是有限制的,如果你真的随便发证书,那就不会被认可,之所以CF敢颁发给任何域名,那是因为它已经通过一定的手段承认了你是该域名的所有人。(因为你添加域名时会让你绑定DNS记录,或者CNAME记录,都可以证明你是域名所有人)。所以不算是胡乱颁发的。 还有就是GOOGLE这样的CA,只给自己的域名颁发证书,随便怎么颁发都是合法的。不会被上级领导所怀疑你干坏事 |
4
whywhywhy 2014-10-12 13:56:23 +08:00 1
再简单描述下
在你没有成为大家信任的领导(CA证书颁发机构)之前,你是不能给别人颁发证书的(别人可以请求让你签名,但是你的签名没人信任,所以无效,等同于自签名) 成为大家信任的CA,第一种就是自己努力,让大家信任你,认可你,(努力进入各大浏览器和系统的信任列表,但是老系统和老浏览器都不会承认,要更新才能承认) 第二种就是找个干爹,让他承认你认可你,让你做一个小头目(CA),这样你就可以颁发大家信任的证书啦。 |
5
Quaintjade 2014-10-12 14:01:02 +08:00 1
证书里有一个certificate basic constraint(基本约束)字段,会注明该证书的Subject Type是CA还是End entity,CA可以签下级证书,End entity不能签其他证书。
同时会注明CA的Path Length Constraint,限制往下能签发多少层CA,0表示不能签发CA,只能签发end entity。 以v2ex的证书为例,左边是站点证书,中间是GD中级CA证书,右边是GD根CA证书 http://image16.poco.cn/mypoco/myphoto/20141012/13/5657397520141012135335020.png |
6
zinev 2014-10-12 14:11:16 +08:00 1
@whywhywhy
@Quaintjade 请教个关于证书的问题。最近反代google的人很多,但都说所要反代的域名要有证书,我能不能这么干:我能不能自己给自己发一个证书安装nginx用来反代google就给自己用而不公开,而且我给自己颁发的证书我到本地导入,这样能不能解决从代理服务器到我本地是加密传输而又可以不去购买证书? |
7
whywhywhy 2014-10-12 14:47:11 +08:00 1
@zinev 可以的,不过现在有免费的证书啊,不抗拒英文的话用stratssl的就可以了,可以续期的,抗拒英文的就用中文的沃通,都是免费的
所以没必要自己签名。当然自己签的也是可以的,如果你本地导入证书的话。 |
8
xoxo 2014-10-12 14:48:51 +08:00 1
证书签名用途,x509的约定,你没法伪造的
|
9
xoxo 2014-10-12 14:53:57 +08:00 1
还有就 Cloudflare赠送的证书,并不是真正意义上归你所有,而是归Cloudflare所有,因为你没有私钥,你无法在自己服务器使用。and also, Cloudflare免费送的证书只有支持SNI的浏览器可访问 。
_______________ AD区 专业人员请无视 _________________ 特价便宜SSL证书,请点击头像个人资料页 |
10
SharkIng 2014-10-13 08:34:06 +08:00 1
|
12
TigerS OP 谢谢各位,讲的很清楚了了解了
|
13
whywhywhy 2014-10-21 09:43:48 +08:00
@SharkIng 多域名证书可以的,不过似乎有数量限制(似乎是100个域名,不过就算没数量限制,总不可能把几千几万个域名写进去吧)
SNI不是证书,SNI是一个端口(同ip)可以使用2个以上的SSL证书的协议,但是xp上的所有IE浏览器不支持。vista开始都支持了,其他浏览器基本都支持。 |
14
wuliao49 2014-11-25 22:05:19 +08:00 via Android
讲的不错
|