1
likuku 2014-11-05 22:17:06 +08:00 1
改端口没必要,禁止root登录,这最起码,最基本的吧,默认sshd_config 就这配置吧。
禁止密码认证,仅许可密钥认证,禁用PAM。 1.可以,密钥对可以在不同主机重复用,不过,建议使用 ForwardAgent,这样只需要最初发起登录的机器上有密钥即可。 2.请使用 sudo 这个软件(这年头了,竟然有人不知道sudo),如此只有被授权的用户才可以直接使用自身帐密通过sudo su 来获得root权限 + 禁止非root用户使用 su |
3
babytomas 2014-11-05 22:42:51 +08:00 1
1、和安全性降低没关系
2、sudo -i |
4
huawuya 2014-11-05 22:54:39 +08:00 1
没有改端口和禁止root,装了fail2ban来处理的,密码长一些,复杂一些,应该也够用了
|
7
billlee 2014-11-05 23:06:18 +08:00 1
密钥对的使用原则是一个客户端生成一对密钥,和服务器数量没关。原因是上传到服务器上的公钥是可以公开的,但私钥要严格控制。
|
8
ryd994 2014-11-06 07:57:35 +08:00 via Android 1
只要私钥不丢,一切好说。
|
9
likuku 2014-11-06 08:32:44 +08:00 via iPhone 1
@Showfom freebsd的sshd默认是禁止root登陆。gentoo和debian貌似也是。
|
10
SharkIng 2014-11-06 08:46:53 +08:00 1
|
12
hzqim OP @likuku 在sshd_config 设置UsePAM no好像没有什么差别啊,开启密码登录还是可以验证登陆,所以问问兄台,在这里设置yes和no有什么区别?
|
13
likuku 2014-11-06 09:39:01 +08:00 1
@hzqim 假若只是禁止了 password 认证,PAM 开启的话,一样可以用帐密登录,虽然背后不是用帐密,而是用 interActiveKeyBoard 认证...。
|
14
hzqim OP |
15
likuku 2014-11-06 09:41:16 +08:00 1
|
16
hzqim OP @ryd994 在 ssh-keygen -t rsa 生成密匙对的步骤中不输入密码,登陆的时候就不用输入密码了,很方便,就是这样会不会降低安全性?
如果设置了密码,该密码是在本地对私匙进行验证还是传输到服务器和公匙进行验证还是密匙对一起验证? |
18
chenshaoju 2014-11-06 10:08:07 +08:00 1
@SharkIng Debian默认是不禁止的,我自己的笔记本和好几台Debian默认都允许root通过SSH登录。
|
20
msg7086 2014-11-06 13:07:00 +08:00 1
@chenshaoju Debian 8 的 openssh 包里已经默认只允许证书登录 root 了。
@hzqim su 太容易误操作了。 统一使用 sudo 的话,只会因为权限不够而无法执行,而不会因为一个疏忽而超权限执行。 而且用 sudo 的话,只有有 sudo 权限的人才能提权。而 su 的话每次都要打 root 密码,不方便放权。 比如你写的某个脚本,有一小部分命令需要提权。只需要把这些指令写进 sudoer 里,设定好 NOPASSWD ,然后用 sudo 来执行这些指令,既可以保证提权,又可以防止提权执行任意指令。比如只能 sudo ls 却不能 sudo reboot 。 |
21
chenshaoju 2014-11-06 13:27:23 +08:00 1
@msg7086 我还没用Debian 8,不予置评……目前的Debian 7是允许的。
|
22
hzqim OP |
25
ryd994 2014-11-06 21:23:41 +08:00 1
@hzqim 还是那句话,如果能保证私钥安全,一切好说。如果私钥丢了,那加不加密码都是迟早悲剧的。但是加了强密码可以给你争取一点发现然后补救的时间。其实强密码也不麻烦,可以ssh-add。
私钥密码的验证是本地的:用密码解密私钥文件得到真正的私钥,然后用私钥加密服务器发来的一段随机数据,密文发回去,服务器用公钥解密,验证身份。 真正要安全的话你不妨找找ssh可用的智能卡设备,只写不读,加密是智能卡独立计算,私钥只存在于卡里。 |
27
likuku 2014-11-06 22:47:54 +08:00
弄本 奥莱理 的 「ssh权威指南」
|