给大家带来CentOS 5.5应用OpenSSH构建SSH办事器
小知识:CentOS对组件的修改主要是去除上游供应商的商标及美工图。SSH办事和Telnet办事一样,经由过程长途登录登录到体系,在长途操控体系。但它与Telnet的分歧点就是:Telnet在传输的过程当中是明文传输,而SSH是将传输内容加密,在传送的过程当中包管了传送内容的保密性,从而进步了体系的平安性。
在这里,我禁绝备将SSH办事作为用户上传下载文件的对象。我只用SSH办事的守旧为长途治理体系供给便利。别的在用户认证方法上,为了办事器和用户的平安,制止用户暗码的认证方法,而基于“钥匙”的方法。
SSH相干设置装备摆设文件的修正
起首修正SSH的设置装备摆设文件。以下:
#vi/etc/ssh/sshd_config ←用vi翻开SSH的设置装备摆设文件
#Protocol2,1 ←找到此即将行头“#”删除,再将行末的“,1”删除,只许可SSH2方法的衔接
↓
Protocol2 ←修正后变成此状况,仅应用SSH2
#ServerKeyBits768 ←找到这一行,将行首的“#”去失落,并将768改成1024
↓
ServerKeyBits1024 ←修正后变成此状况,将ServerKeyBits改成1024比特
#PermitRootLoginyes ←找到这一行,将行首的“#”去失落,并将yes改成no
↓
PermitRootLoginno ←修正后变成此状况,不许可用root停止登录
#PasswordAuthenticationyes ←找到这一行,将yes改成no
↓
PasswordAuthenticationno ←修正后变成此状况,不许可暗码方法的登录
#PermitEmptyPasswordsno ←找到此即将行头的“#”删除,不许可空暗码登录
↓
PermitEmptyPasswordsno ←修正后变成此状况,制止空暗码停止登录
然后保留并加入。(vi保留加入的敕令为ZZ)
由于只想让SSH办事为治理体系供给便利,所以在欠亨过外网长途治理体系的情形下,只许可内网客户端经由过程SSH登录到办事器,以最年夜限制削减不平安身分。设置办法以下:
#vi/etc/hosts.deny←修正屏障规矩,在文尾添加响应行
#
#hosts.denyThisfiledescribesthenamesofthehostswhichare
#*not*allowedtousethelocalINETservices,asdecided
#bythe/usr/sbin/tcpdserver.
#
#Theportmaplineisredundant,butitislefttoremindyouthat
#thenewsecureportmapuseshosts.denyandhosts.allow.Inparticular
#youshouldknowthatNFSusesportmap!
sshd:ALL ←添加这一行,屏障来自一切的SSH衔接要求
#vi/etc/hosts.allow←修正许可规矩,在文尾添加响应行
#
#hosts.allowThisfiledescribesthenamesofthehostswhichare
#allowedtousethelocalINETservices,asdecided
#bythe/usr/sbin/tcpdserver.
#
sshd:192.168.1. ←添加这一行,只许可来自内网的SSH衔接要求
#servicesshdrestart ←从新启动SSH办事器
这时候,在长途终端(自用PC等等)上,用SSH客户端软件以正常的暗码的方法是没法登录办事器的。为了在客户可以或许登录到办事器,我们接上去树立SSH用的公钥与私钥,以用于客户端以“钥匙”的方法登录SSH办事器。
SSH2的公钥与私钥的树立
登录为一个通俗用户,基于这个用户树立公钥与私钥。(这里以centos用户为例)
#su-centos ←登录为普通用户centos
$ssh-keygen-trsa ←树立公钥与私钥
Generatingpublic/privatersakeypair.
Enterfileinwhichtosavethekey(/home/centos/.ssh/id_rsa): ←钥匙的文件名,这里坚持默许直接回车
Createddirectory/home/centos/.ssh
Enterpassphrase(emptyfornopassphrase): ←输出口令
Entersamepassphraseagain: ←再次输出口令
Youridentificationhasbeensavedin/home/centos/.ssh/id_rsa.
Yourpublickeyhasbeensavedin/home/centos/.ssh/id_rsa.pub.
Thekeyfingerprintis:
89:b5:f7:3a:cf:e4:6f:a4:d7:26:f3:6d:b4:f7:18:f1centos@300second
然后确认一下公钥与密钥的树立,和对应于客户真个一些处置。
$cd~/.ssh ←进入用户SSH设置装备摆设文件的目次
$ls-l ←列出文件
总计8
-rw-------1centoscentos174311-1801:16id_rsa←确认私钥已被树立
-rw-r--r--1centoscentos39811-1801:16id_rsa.pub←确认公钥已被树立
$cat~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys ←公钥内容输入到响应文件中
$rm-f~/.ssh/id_rsa.pub ←删除本来的公钥文件
$chmod400~/.ssh/authorized_keys ←将新树立的公钥文件属性设置为400
$exit ←加入普通用户的登录(前往root的登录)
然后,将私钥经由过程平安的方法转移到欲经由过程SSH衔接到办事器的PC上。这里经由过程U盘拷贝到远端治理客户机。
#fdisk-l
Disk/dev/sda:21.4GB,21474836480bytes
255heads,63sectors/track,2610cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/sda1*11310439183Linux
/dev/sda21478522112+82Linuxswap/Solaris
/dev/sda37919901535814083Linux
Disk/dev/sdb:2021MB,2021654528bytes
255heads,63sectors/track,245cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/sdb112451967931bW95FAT32
#mkdir/mnt/usb
#mount/dev/sdb1/mnt/usb
#cd/mnt/usb
#cp/home/centos/.ssh/id_rsa.
如许,我们经由过程对应于centos用户的私钥,就能够在长途终端上经由过程SSH客户端衔接到办事器了。但办事器生成的私钥匙不克不及被客户端直策应用…具体请见下一页
当办事器的SSH办事正常运转后,我们完整可以从此在我们的自用PC上用SSH客户端软件在局域网中登录到办事器,用这类方法完成办事器今后的设置装备摆设和保护。不严厉的说,这时候办事器是不须要显示器和键盘的,由于绝年夜多半的设置装备摆设任务都可在远端(局域网内)的客户端上操控。
在在CentOS5.5下用OpenSSH构建SSH办事器(上)一节中,我们将办事器端响应用户的的私钥用平安的方法--U盘为介质,挪动到了长途终端(治理PC)上,上面就详细来引见一下载长途终端用SSH客户端软件登录到办事器的办法。
这里,以经常使用、易用的SSH客户端软件之一--PuTTY为例,引见从PC上登录到办事器的办法。但办事器端直接生成的私钥,PuTTY没法直接应用,须要用PuTTYGen来转换为PuTTY可使用的私钥匙。
下载私钥转换对象puttygen。
运转puttygen,涌现以下窗口:
点击Load,拔取办事器端生成的私钥(文件类型要选择“AllFiles”)。以下
开端转换私钥,这里须要输出在办事器端树立此私钥时的口令。在文本框中输出口令开端转换,以下:
假如转换胜利后,会弹出转换胜利的提醒窗口,点击肯定进入下一步。以下:
保留转换后的私钥匙到恰当的地位(转换后的私钥将做为PuTTY登录到办事器时应用的私钥)。点击“Saveprivatekey”,并选择恰当的地位保留私钥。以下:
最初,封闭puttygen,接上去开端应用PuTTY长途登录办事器。
双击启动PuTTY,在左边找到Auth(认证方法)一项,对衔接是应用的私钥停止设定,以下:
点击Browse,选择方才用puttygen转换后的私钥。以下:
然后点击左边的Session,回到主机衔接信息的设置,设置以下:
保留后,“SavedSessions”一栏中会显示方才被参加的衔接。双击此衔接,开端停止衔接,以下
然后在登录窗口中输出办事器端响应用户的用户名,以下:
在输出完用户名后,不会涌现用户暗码输出提醒框,由于在SSH办事器设置装备摆设中我制止了用户经由过程用户暗码方法的SSH登录。这时候候会涌现请求输出口令的提醒,这个口令就是在办事器端树立响应用户(centos)的私钥的时刻设置的口令。输出口令,停止登录。以下:
输出口令后,便可登录胜利,以下:
以上,就经由过程“钥匙”的方法胜利的登录到了办事器。
PS:
1)因为在SSH办事器设准时制止了root直接从长途登录,所以用SSH客户端是没法用经由过程root登录的,再者,要许可某个用户对办事器停止登录,必需基于某个用户树立其响应的公钥与私钥,由于我制止用户经由过程用户暗码的认证方法来登录SSH办事器,如许就年夜年夜加强了办事器的平安性。
2)作为体系治理员,您可以将普通用户参加到wheel组中,然后基于此普通用户树立响应私钥于公钥,经由过程此用户长途登录到,然后再经由过程“su-”敕令,取得root权限,对体系停止设置装备摆设。并且,在初始情况设置中,我们不许可wheel组外用户“su-”登录为root用户,从而又进一步加强了体系的平安性。
小知识:CentOS在服务器提供商、中小型公司中装机量几乎是最大的Linux发行版。 清楚了解网络的基础知识,特别是在Linux下应用知识,如接入internet等等。 请问谁有Linux的学习心得的吗?简单的说说? 主流Linux发行版都自带非常详细的文档(包括手册页和FAQ),从系统安装到系统安全,针对不同层次的人的详尽文档,仔细阅读文档后40%问题都可在此解决。 首先Linux是开源的,这也是最主要的原因,想学windows,Unix,对不起我们没源代码。也正是因为这样,Linux才能够像滚雪球一样越滚越大,发展到现在这种规模。 掌握在Linux系统中安装软件,在安装Linux工具盘后大致日常所需的软件都会有,一般网络提供下载的软件都会有安装说明。 编程学习及开发,Linux是免费,开源的操作系统,并且可开发工具相当多,如果您支持自由软件,一定要同广大热爱自由软件人士一同为其不懈努力。 然我们对Linux的学习首先是通过对它的产生,发展,到今天仍然在不断完善开始的。 Windows?是图形界面的,Linux类似以前的?DOS,是文本界面的,如果你运行了图形界面程序X-WINDOWS后,Linux?也能显示图形界面,也有开始菜单、桌面、图标等。
页:
[1]