Linux安全网 - Linux操作系统_Linux 命令_Linux教程_Linux黑客

会员投稿 投稿指南 本期推荐: 强烈推荐:Ylmf OS 3.0 正式版发布附迅雷高 XP系统下硬盘安装Fedora 14图文教程
搜索:
您的位置: Linux安全网 > Linux入门 > » 正文

linux ssh密钥认证

来源: huoxiubo 分享至:
SSH是一个在应用程序中提供安全通信的协议.
为什么我要使用SSH?
Telnet服务虽然使用方便,但是由于安全性不高(因为明文发送账号密码),因此目前通常使用SSH(Secure Shell)代替Telnet进行远程管理。SSH是一个在应用程序中提供安全通信的协议,通过SSH可以用安全的访问服务器,因为SSH基于成熟的共钥加密体系,把所有的传输的数据进行加密,保证数据在传输时不被恶意破坏,泄漏,篡改。SSH还是用了多种加密和认证方式,解决了传输中数据加密和身份认证的问题,能有效的防止网络嗅探和ip欺骗等攻击。
OpenSSH
Linux下广泛使用免费的OpenSSH程序来实现SSH协议.Red Hat Enterpriselinux 4也同样使用OpenSSH.它同时支持SSH1和SSH2协议.一、检查系统是否安装OpenSSH
[root@simple ~]# rpm -q openssh-server
openssh-server-3.9p1-8.RHEL4.15二、SSH服务的配置
1、配置SSH服务的运行参数,是通过修改配置文件/etc/ssh/sshd_config实现的。
2、因为SSH服务使用默认的配置已经能够很好的工作,如果仅仅提供SSH服务不需要修改。这里只介绍一
些常用的选项。
#Port 22
定义了SSH服务监听的断口号,SSH服务默认使用的端口号是22
#Proctocol 2,1
定义了SSH服务器使用SSH协议的顺序。默认识先使用SSH2协议,如果不成功则使用SSH1协议,为了安全起
见,可以设置只使用SSH2协议。
#ListenAddress 0.0.0.0
定义SSH服务器帮定的IP地址,默认绑定服务器所有可用的IP地址.
#PermitRootLogin yes
定义是否允许管理员登陆
#PermitEmptyPasswords no
定义是否允许空密码登陆.
#PasswordAuthentication no
定义是否使用口令认证方式,如果准备使用公钥认证可以设置为no三、使用公钥认证1、原理:首先由用户生成一对密钥,然后将公钥保存在SSH服务器用户的目录下.ssh子目录中的authorized_key文件里(/root/.ssh/authorized_key).私钥保存在本地计算机.当用户登陆时,服务器检查authorized_key文件的公钥是否与用户的私钥对应,如果相符则允许登入,否则拒绝.由于私钥只有保存在用户的本地计算机中,因此入侵者就算得到用户口令,也不能登陆到服务器.
2、启用公钥认证
修改配置文件/etc/ssh/sshd_config
将”PasswordAuthentication yes”修改为”PasswordAuthentication no”
3、生成密钥A:192.168.1.159[root@159 ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory ‘/root/.ssh’.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
dd:61:6a:1e:df:37:14:61:0a:f1:9f:b3:37:5e:bb:1c root@159[root@159 ~]# cd .ssh/
[root@159 .ssh]# ls
id_rsa  id_rsa.pub[root@159 .ssh]# scp id_rsa.pub root@192.168.1.39:/root/.ssh/authorized_keysB:192.168.1.39[root@39 ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
66:7b:2f:d8:af:db:f0:37:aa:09:05:25:fc:4f:0b:4c root@39[root@39 ~]# cd .ssh/[root@39 .ssh]# ls
authorized_keys  id_rsa  id_rsa.pub  known_hosts[root@39 .ssh]# scp id_rsa.pub root@192.168.1.159:/root/.ssh/authorized_keys 四:验证:[root@39 .ssh]# ssh 192.168.1.159
Last login: Mon Jun 27 10:47:03 2011 from 192.168.1.39
[root@159 ~]#[root@159 .ssh]# ssh 192.168.1.39
Last login: Fri Jun 10 08:05:47 2011 from 192.168.1.159
[root@39 ~]#

Tags:
分享至:
最新图文资讯
1 2 3 4 5 6
验证码:点击我更换图片 理智评论文明上网,拒绝恶意谩骂 用户名:
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 发展历史