使用Google-Authenticator加强服务器SSH登录


对于需要特殊加密的人群,我这里给出相应的方法来进行谷歌式加密。

 

步骤如下:

准备:
首先在你的手机上准备好客户端(自己百度下载)
接下来按照命令做:

date 查看系统时间


date -s 03/04/2013(将系统日期设定为2013年03月04日)


date -s 110:38(将系统时间设定为上午 10:38)


修改完后执行:clock -w ,强制将时间写入COMS!

如图:


\

 

 

//下载li

 

yum -y install wget gcc make pam-devel libpng-devel

wget http://fukuchi.org/works/qrencode/qrencode-3.3.1.tar.gz

tar zxf qrencode-3.3.1.tar.gz

cd qrencode-3.3.1

./configure --prefix=/usr && make && make install


 

\

 

\

 

\

 

 

\

 

 

(这里下载goole验证的自己去查找地址,这里的是我们自己用的,估计大多数的都用不了)
wget http://61.139.99.37/mysoft/Google_authenticator/libpam-google-authenticator-1.0-source.tar.bz2

tar jxf libpam-google-authenticator-1.0-source.tar.bz2

cd libpam-google-authenticator-1.0

make && make install




\

 

\

 

 


其中在实验的时候CRT使用连接的时候出现了IP变换,一次我修改了一次IP

\

 

 


接着登录设置
google-authenticator
这时候拷贝出备用码
这里选择y


\

 



这里继续配置登录设置文件
vi /etc/pam.d/sshd

添加 auth required pam_google_authenticator.so


ChallengeResponseAuthentication no

把它改成

ChallengeResponseAuthentication yes



\

 

\

 

 


//这里设置selinux为disable是为了在登录的时候不出现问题。
setenforce 0

service sshd restart

ssh localhost


登陆成功:

如图:

\

 




【注】:如果你确实按照我的以上步骤一步步做,并且没有出现登录提示信息,那么就按照以下方式调试。
错误解决

1 selinux需设定为disabled,不然SSH就无法登陆了。(setenforce 0)
然后service sshd testart

2 google authenticator命令行下不生成二维码问题解决方法
strace -o log google-authenticator


3 当你的手机不在身边或者是没有安装apk的时候,记住你在生成二维码时下面的5串数字,那个是应急码,
当你无法登录的时候输入那些任意一个就可以登录。



相关内容