知识屋:更实用的电脑技术知识网站
所在位置:首页 > 操作系统 > linux

服务管理――ssh

发布时间:2014-09-05 13:53:35作者:知识屋

服务管理——ssh
 
一 ssh相关知识
什么是SSH?
SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(NetworkWorking Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是Unix系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有Unix平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台—都可运行SSH。
 
[plain] 
#带有d:守护  
#查询安装包  
[root@client01 opt]# rpm -qa|grep openssh  
openssh-clients-5.3p1-52.el6.x86_64  
openssh-5.3p1-52.el6.x86_64  
openssh-server-5.3p1-52.el6.x86_64  
       [root@client01opt]# rpm -ql openssh-server  
/etc/pam.d/ssh-keycat  
/etc/pam.d/sshd  
/etc/rc.d/init.d/sshd  
/etc/ssh/sshd_config  
/etc/sysconfig/sshd  
/usr/libexec/openssh/sftp-server  
/usr/libexec/openssh/ssh-keycat  
/usr/sbin/.sshd.hmac  
/usr/sbin/sshd  
/usr/share/doc/openssh-server-5.3p1  
/usr/share/doc/openssh-server-5.3p1/HOWTO.ssh-keycat  
/usr/share/man/man5/moduli.5.gz  
/usr/share/man/man5/sshd_config.5.gz  
/usr/share/man/man8/sftp-server.8.gz  
/usr/share/man/man8/sshd.8.gz  
/var/empty/sshd  
        
#telnet:明文传输,不安全。不建议使用  
[root@client01 opt]# cd /etc/ssh/  
[root@client01 ssh]# ll  
total 156  
-rw-------. 1 root root 125811 Apr  5  2011moduli  
-rw-r--r--. 1 root root   2047 Apr 5  2011 ssh_config  
-rw-------. 1 root root   3872 Apr 5  2011 sshd_config  
-rw-------. 1 root root    668 Jul 23 00:58 ssh_host_dsa_key  
-rw-r--r--. 1 root root    590 Jul 23 00:58 ssh_host_dsa_key.pub  
-rw-------. 1 root root    963 Jul 23 00:58 ssh_host_key  
-rw-r--r--. 1 root root    627 Jul 23 00:58 ssh_host_key.pub  
-rw-------. 1 root root   1675 Jul 23 00:58 ssh_host_rsa_key  
-rw-r--r--. 1 root root    382 Jul 23 00:58 ssh_host_rsa_key.pub  
#ssh_config:ssh命令的配置文件  
#sshd_config:重点学习  
   
[root@client01 ssh]# rm -rf~/.ssh/known_hosts  
   
[root@larrywen /]# ssh 192.168.1.12  
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  
@   WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @  
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  
IT IS POSSIBLE THAT SOMEONE IS DOINGSOMETHING NASTY!  
Someone could be eavesdropping on you rightnow (man-in-the-middle attack)!  
It is also possible that the RSA host keyhas just been changed.  
The fingerprint for the RSA key sent by theremote host is  
3e:bd:1e:76:c4:c7:b4:98:dc:95:fc:61:d7:a8:45:71.  
Please contact your system administrator.  
Add correct host key in/root/.ssh/known_hosts to get rid of this message.  
Offending key in /root/.ssh/known_hosts:7  
RSA host key for 192.168.1.12 has changedand you have requested strict checking.  
Host key verification failed.  
   
#出现上述问题,删除该文件  
[root@client01 ssh]# rm -rf~/.ssh/known_hosts  
#如果还是不行,本机也删除  
[root@larrywen .ssh]# rm -rf known_hosts  
[root@client01 ssh]# ll  
total 156  
-rw-------. 1 root root 125811 Apr  5  2011moduli  
-rw-r--r--. 1 root root   2047 Apr 5  2011 ssh_config  
-rw-------. 1 root root   3872 Apr 5  2011 sshd_config  
-rw-------. 1 root root    668 Jul 23 00:58 ssh_host_dsa_key  
-rw-r--r--. 1 root root    590 Jul 23 00:58 ssh_host_dsa_key.pub  
-rw-------. 1 root root    963 Jul 23 00:58 ssh_host_key  
-rw-r--r--. 1 root root    627 Jul 23 00:58 ssh_host_key.pub  
-rw-------. 1 root root   1675 Jul 23 00:58 ssh_host_rsa_key  
-rw-r--r—. 1 root root    382 Jul 23 00:58 ssh_host_rsa_key.pub  
   
#我们删除ssh_host_*文件,然后重启服务,发现文件自动生成了  
[root@client01 ssh]# rm -f ssh_host_*  
[root@client01 ssh]# ll  
total 132  
-rw-------. 1 root root 125811 Apr  5  2011moduli  
-rw-r--r--. 1 root root   2047 Apr 5  2011 ssh_config  
-rw-------. 1 root root   3872 Apr 5  2011 sshd_config  
[root@client01 ssh]# /etc/init.d/sshdrestart  
Stopping sshd:                                            [  OK  ]  
Generating SSH1 RSA host key:                              [  OK  ]  
Generating SSH2 RSA host key:                              [  OK  ]  
Generating SSH2 DSA host key:                              [  OK  ]  
Starting sshd:                                             [ OK  ]  
[root@client01 ssh]# ll  
total 156  
-rw-------. 1 root root 125811 Apr  5  2011moduli  
-rw-r--r--. 1 root root   2047 Apr 5  2011 ssh_config  
-rw-------. 1 root root   3872 Apr 5  2011 sshd_config  
-rw-------. 1 root root    672 Aug 6 10:38 ssh_host_dsa_key  
-rw-r--r--. 1 root root    590 Aug 6 10:38 ssh_host_dsa_key.pub  
-rw-------. 1 root root    963 Aug 6 10:38 ssh_host_key  
-rw-r--r--. 1 root root    627 Aug 6 10:38 ssh_host_key.pub  
-rw-------. 1 root root   1675 Aug 6 10:38 ssh_host_rsa_key  
-rw-r--r--. 1 root root    382 Aug 6 10:38 ssh_host_rsa_key.pub  
   
[root@client01 ssh]# man 5 sshd_config  
   
#修改端口,然后重启,重新登录  
[root@client01 ssh]# vim sshd_config  
[root@client01 ssh]# grep "Port"sshd_config  
#Port 22  
Port 2222  
#GatewayPorts no  
[root@client01 ssh]# /etc/init.d/sshdrestart  
Stopping sshd:                                            [  OK  ]  
Starting sshd:                                            [  OK  ]  
[root@client01 ~]# netstat -lanput | grepsshd  
tcp       0      0 0.0.0.0:2222                0.0.0.0:*                   LISTEN      1814/sshd            
tcp       0      0 :::2222                     :::*                        LISTEN      1814/sshd     
   
#修改端口后按照以前的登录方式会出错  
[root@larrywen /]# ssh 192.168.1.11  
ssh: connect to host 192.168.1.11 port 22:Connection refused  
   
#指定端口,参数可以放在前面或者后面  
[root@larrywen /]# ssh 192.168.1.11 -p 2222  
The authenticity of host'[192.168.1.11]:2222 ([192.168.1.11]:2222)' can't be established.  
RSA key fingerprint is26:c7:6e:26:d8:9d:84:e4:25:46:d4:43:1f:d5:54:67.  
Are you sure you want to continueconnecting (yes/no)? yes  
Warning: Permanently added'[192.168.1.11]:2222' (RSA) to the list of known hosts.  
root@192.168.1.11's password:  
Last login: Tue Aug  6 09:54:46 2013 from 192.168.1.1  
[root@client01 ~]# exit  
logout  
Connection to 192.168.1.11 closed.  
[root@larrywen /]# ssh -p 2222 192.168.1.11  
root@192.168.1.11's password:  
Last login: Tue Aug  6 10:42:48 2013 from 192.168.1.1  
   
   
#scp:借助SSH服务  
[root@larrywen begin]# scp ule-begin.pdf 192.168.1.11:/root-P 2222  
2222: No such file or directory  
[root@larrywen begin]# scp -P 2222ule-begin.pdf 192.168.1.11:/root  
root@192.168.1.11's password:  
ule-begin.pdf                                                                                      100%   14MB 13.6MB/s   00:00     
 
二 ssh修改端口
[plain] 
#修改端口:安全考虑  
        
[root@client01 ~]# vim /etc/ssh/sshd_config  
[root@client01 ~]# service sshd restart  
Stopping sshd:                                            [  OK  ]  
Starting sshd:                                             [  OK  ]  
[root@client01 ~]# netstat -langput | grepsshd  
tcp       0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1969/sshd            
tcp       0      0 :::22                       :::*                        LISTEN     1969/sshd       
   
[root@client01 ~]# ifconfig eth0:1192.168.1.111 netmask 255.255.255.0  
[root@client01 ~]# ifconfig  
eth0     Link encap:Ethernet  HWaddr00:0C:29:07:DD:3B   
         inet addr:192.168.1.11 Bcast:192.168.1.255  Mask:255.255.255.0  
         inet6 addr: fe80::20c:29ff:fe07:dd3b/64 Scope:Link  
         UP BROADCAST RUNNING MULTICAST MTU:1500  Metric:1  
         RX packets:13261 errors:0 dropped:0 overruns:0 frame:0  
         TX packets:2665 errors:0 dropped:0 overruns:0 carrier:0  
         collisions:0 txqueuelen:1000  
         RX bytes:15228499 (14.5 MiB)  TXbytes:402371 (392.9 KiB)  
   
eth0:1   Link encap:Ethernet  HWaddr00:0C:29:07:DD:3B   
         inet addr:192.168.1.111 Bcast:192.168.1.255 Mask:255.255.255.0  
         UP BROADCAST RUNNING MULTICAST MTU:1500  Metric:1  
   
lo       Link encap:Local Loopback   
         inet addr:127.0.0.1 Mask:255.0.0.0  
         inet6 addr: ::1/128 Scope:Host  
         UP LOOPBACK RUNNING MTU:16436  Metric:1  
         RX packets:0 errors:0 dropped:0 overruns:0 frame:0  
         TX packets:0 errors:0 dropped:0 overruns:0 carrier:0  
         collisions:0 txqueuelen:0  
         RX bytes:0 (0.0 b)  TX bytes:0(0.0 b)  
   
   
[root@larrywen /]# ssh -p 2222192.168.1.111  
ssh: connect to host 192.168.1.111 port2222: Connection refused  
[root@larrywen /]# ssh 192.168.1.111  
The authenticity of host '192.168.1.111(192.168.1.111)' can't be established.  
RSA key fingerprint is26:c7:6e:26:d8:9d:84:e4:25:46:d4:43:1f:d5:54:67.  
Are you sure you want to continueconnecting (yes/no)? yes  
Warning: Permanently added '192.168.1.111'(RSA) to the list of known hosts.  
root@192.168.1.111's password:  
Last login: Tue Aug  6 10:57:55 2013 from 192.168.1.1  
[root@client01 ~]#  
   
[root@client01 ssh]# grep "ListenAddress"sshd_config  
#ListenAddress 0.0.0.0  
#ListenAddress ::  
ListenAddress 192.168.1.111  
   
[root@client01 ~]# exit  
logout  
Connection to 192.168.1.111 closed.  
[root@larrywen /]# ssh 192.168.1.111  
root@192.168.1.111's password:  
Last login: Tue Aug  6 11:05:55 2013 from 192.168.1.1  
[root@client01 ~]# netstat -langput | grepsshd  
tcp       0      0 192.168.1.111:22            0.0.0.0:*                   LISTEN      2011/sshd          
   
[root@larrywen /]# ssh 192.168.1.11  
ssh: connect to host 192.168.1.11 port 22:Connection refused  
 
三 ssh实现只允许内网登录,不允许外网登录
 
[plain] 
#添加一张网卡,网段是172.16.1.0  
#默认情况都可以访问  
[root@larrywen /]# ssh 172.16.1.11  
The authenticity of host '172.16.1.11(172.16.1.11)' can't be established.  
RSA key fingerprint isf5:82:df:5b:07:2a:4a:b2:91:75:86:76:12:49:54:24.  
Are you sure you want to continueconnecting (yes/no)? yes  
Warning: Permanently added '172.16.1.11'(RSA) to the list of known hosts.  
root@172.16.1.11's password:  
Last login: Tue Aug  6 19:15:21 2013 from 192.168.1.1  
   
#绑定IP地址,内网可以访问,外网不绑定  
[root@serv01 ~]# vim /etc/ssh/sshd_config  
[root@serv01 ~]# grep "Address"/etc/ssh/sshd_config  
#AddressFamily any  
#ListenAddress 0.0.0.0  
#ListenAddress ::  
ListenAddress 192.168.1.11  
#重启服务  
[root@serv01 ~]# /etc/init.d/sshd restart  
Stopping sshd:                                             [  OK  ]  
Starting sshd:                                            [  OK  ]  
[root@serv01 ~]# exit  
logout  
Connection to 172.16.1.11 closed.  
#连接172.16.1.11,不可以  
[root@larrywen /]# ssh 172.16.1.11  
ssh: connect to host 172.16.1.11 port 22:Connection refused  
   
#连接192.168.1.11,可以正常登录  
[root@larrywen /]# ssh 192.168.1.11  
root@192.168.1.11's password:  
Last login: Tue Aug  6 19:13:51 2013  
[root@serv01 ~]# exit  
logout  
Connection to 192.168.1.11 closed.  
[root@larrywen /]# ssh 192.168.1.11  
root@192.168.1.11's password:  
Last login: Tue Aug  6 19:15:33 2013 from 172.16.1.1  
   
#查看网络状态  
[root@serv01 ~]# netstat -lanput | grepsshd  
tcp       0      0 192.168.1.11:22             0.0.0.0:*                   LISTEN      1375/sshd  
 
四 ssh登录不需要密码实现
[plain] 
#不要密码  
[root@serv01 ~]# vim /etc/ssh/sshd_config  
[root@serv01 ~]# grep"#PermitEmptyPasswords" /etc/ssh/sshd_config -n  
65:#PermitEmptyPasswords no  
[root@serv01 ~]# grep"PermitEmptyPasswords" /etc/ssh/sshd_config -n  
65:#PermitEmptyPasswords no  
67:PermitEmptyPasswords yes  
   
#添加用户  
[root@serv01 ssh]# useradd hongyi  
[root@serv01 ssh]# vim /etc/passwd  
[root@serv01 ssh]# tail -n1 /etc/passwd  
hongyi::500:500::/home/hongyi:/bin/bash  
[root@serv01 ssh]# /etc/init.d/sshd restart  
Stopping sshd:                                             [  OK  ]  
Starting sshd:                                            [  OK  ]  
   
[root@larrywen /]# ssh hongyi@192.168.1.11  
[hongyi@serv01 ~]$  
 
五 ssh不允许root用户登录
[plain] 
[root@serv01 ssh]# grep"PermitRootLogin" sshd_config -n  
42:#PermitRootLogin yes  
43:PermitRootLogin no  
93:# the setting of "PermitRootLoginwithout-password".  
[root@serv01 ssh]# man sshd_config  
[root@serv01 ssh]# /etc/init.d/sshd restart  
Stopping sshd:                                            [  OK  ]  
Starting sshd:                                            [  OK  ]  
[root@serv01 ssh]# vim /etc/passwd  
[root@serv01 ssh]# tail -n1 /etc/passwd  
hongyi:x:500:500::/home/hongyi:/bin/bash  
[root@serv01 ssh]# passwd hongyi  
   
[root@larrywen /]# ssh 192.168.1.11  
root@192.168.1.11's password:  
Permission denied, please try again.  
[root@larrywen /]# ssh hongyi@192.168.1.11  
hongyi@192.168.1.11's password:  
Last login: Tue Aug  6 19:29:05 2013 from 192.168.1.1  
 
六 ssh指定用户或者组登录
[plain] 
#允许用户 拒绝用户  
AllowUsers hongyi  
AllowUsers hongyi up01  
DenyUsers zhink  
AllowGroups  
DenyGroups  
   
[root@serv01 ssh]# useradd zhink  
[root@serv01 ssh]# passwd zhink  
   
[root@serv01 ssh]# useradd up01  
[root@serv01 ssh]# passwd up01  
   
[root@serv01 ssh]# grep "Users"sshd_config -n  
47:AllowUsers hongyi up01  
48:DenyUsers zhink  
   
[root@serv01 ssh]# service sshd restart  
Stopping sshd:                                            [  OK  ]  
Starting sshd:                                            [  OK  ]  
   
[root@serv01 ssh]# man sshd_config  
[root@larrywen /]# ssh hongyi@192.168.1.11  
hongyi@192.168.1.11's password:  
Last login: Tue Aug  6 19:40:50 2013 from 192.168.1.1  
[hongyi@serv01 ~]$ exit  
logout  
Connection to 192.168.1.11 closed.  
[root@larrywen /]# ssh up01@192.168.1.11  
up01@192.168.1.11's password:  
[up01@serv01 ~]$ exit  
logout  
Connection to 192.168.1.11 closed.  
[root@larrywen /]# ssh zhink@192.168.1.11  
zhink@192.168.1.11's password:  
Permission denied, please try again.  
zhink@192.168.1.11's password:  
 
七 ssh等效性
[plain] 
#不用密码登录别人的机器  
#ssh等效性  
   
#生成认证文件:公钥 私钥  
   
[root@larrywen /]# ssh-keygen  
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:  
86:49:93:08:44:01:03:85:5c:f8:2b:de:2b:08:c2:4froot@larrywen.host.com  
The key's randomart image is:  
+--[ RSA 2048]----+  
|**Oo             |  
|.+ . . .         |  
|  .. +          |  
|   .. +         |  
|.  . o S        |  
|oo E  .         |  
|= =              |  
|.o o             |  
| ...            |  
+-----------------+  
   
[root@larrywen /]# cd ~/.ssh/  
[root@larrywen .ssh]# ls  
id_rsa id_rsa.pub  known_hosts  
   
[root@larrywen .ssh]# ssh-copy-id -iid_rsa.pub 192.168.0.217  
root@192.168.0.217's password:  
Now try logging into the machine, with"ssh '192.168.0.217'", and check in:  
   
 .ssh/authorized_keys  
   
[root@larrywen ssh]# ssh 192.168.0.217  
Last login: Fri Aug  2 11:33:41 2013 from 192.168.0.10  
[root@similar ~]#  
   
   
to make sure we haven't added extra keysthat you weren't expecting.  
   
[root@larrywen .ssh]# yum installopenssh-clients -y  
   
#双向SSH等效性  
[root@serv01 .ssh]# ssh-keygen  
[root@serv01 .ssh]# ssh-copy-id -iid_rsa.pub 192.168.1.12  
The authenticity of host '192.168.1.12(192.168.1.12)' can't be established.  
RSA key fingerprint is3e:bd:1e:76:c4:c7:b4:98:dc:95:fc:61:d7:a8:45:71.  
Are you sure you want to continueconnecting (yes/no)? yes  
Warning: Permanently added '192.168.1.12'(RSA) to the list of known hosts.  
root@192.168.1.12's password:  
Now try logging into the machine, with"ssh '192.168.1.12'", and check in:  
   
 .ssh/authorized_keys  
   
to make sure we haven't added extra keysthat you weren't expecting.  
   
[root@serv01 .ssh]# ssh 192.168.1.12  
Last login: Tue Aug  6 22:10:09 2013 from 192.168.1.11  
[root@serv02 ~]#  
   
   
[root@serv02 .ssh]# ssh-keygen  
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:  
54:6b:99:8a:21:2c:28:0d:2f:89:2e:1a:b1:b3:ef:9eroot@serv02.host.com  
The key's randomart image is:  
+--[ RSA 2048]----+  
|.        .      |  
|.* .    . +     |  
|B + o . . =      |  
|o+ . . + o       |  
|=.   . S        |  
|o+               |  
|o                |  
| . .             |  
| oE              |  
+-----------------+  
[root@serv02 .ssh]# ssh-copy-id -iid_rsa.pub 192.168.1.11  
The authenticity of host '192.168.1.11(192.168.1.11)' can't be established.  
RSA key fingerprint isf5:82:df:5b:07:2a:4a:b2:91:75:86:76:12:49:54:24.  
Are you sure you want to continueconnecting (yes/no)? yes  
Warning: Permanently added '192.168.1.11'(RSA) to the list of known hosts.  
root@192.168.1.11's password:  
Now try logging into the machine, with"ssh '192.168.1.11'", and check in:  
   
 .ssh/authorized_keys  
   
to make sure we haven't added extra keysthat you weren't expecting.  
   
[root@serv02 .ssh]# ssh 192.168.1.11  
Last login: Tue Aug  6 22:09:27 2013 from 192.168.1.12  
[root@serv01 ~]#  
   
   
   
#私钥被Serv03拿去,可以登录  
#私密加密  
[root@serv01 /]# ssh-keygen  
[root@serv01 .ssh]# ssh-copy-id -iid_rsa192.168.1.13  
   
[root@serv01 .ssh]# ssh-copy-id -i id_rsa192.168.1.13  
The authenticity of host '192.168.1.13(192.168.1.13)' can't be established.  
RSA key fingerprint isac:ca:a2:ca:b4:27:b5:aa:5d:1a:eb:6e:5f:3c:2e:51.  
Are you sure you want to continueconnecting (yes/no)? yes  
Warning: Permanently added '192.168.1.13'(RSA) to the list of known hosts.  
root@192.168.1.13's password:  
Now try logging into the machine, with"ssh '192.168.1.13'", and check in:  
   
 .ssh/authorized_keys  
   
to make sure we haven't added extra keysthat you weren't expecting.  
   
[root@serv01 .ssh]# ssh 192.168.1.13  
Last login: Tue Aug  6 21:47:04 2013 from 192.168.1.1  
[root@serv03 ~]#  
   
#私密不需要密码——SSH代理  
#重启后失效  
[root@serv01 .ssh]# ssh-agent $SHELL  
[root@serv01 .ssh]# ssh-add  
   
[root@serv01 .ssh]# ssh-keygen  
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:  
bd:5d:d4:1b:52:32:2f:a3:4e:60:d1:7a:1d:91:c2:4croot@serv01.host.com  
The key's randomart image is:  
+--[ RSA 2048]----+  
|        .=E +o. |  
|         .= o=. |  
|        o. o+oo.|  
|       .o...o+ o|  
|       S oo  .. |  
|         oo .   |  
|         ...    |  
|                 |  
|                 |  
+-----------------+  
[root@serv01 .ssh]# ssh-copy-id -i id_rsa192.168.1.12  
The authenticity of host '192.168.1.12(192.168.1.12)' can't be established.  
RSA key fingerprint is3e:bd:1e:76:c4:c7:b4:98:dc:95:fc:61:d7:a8:45:71.  
Are you sure you want to continueconnecting (yes/no)? yes  
Warning: Permanently added '192.168.1.12'(RSA) to the list of known hosts.  
root@192.168.1.12's password:  
Now try logging into the machine, with"ssh '192.168.1.12'", and check in:  
   
 .ssh/authorized_keys  
   
to make sure we haven't added extra keysthat you weren't expecting.  
   
[root@serv01 .ssh]# ssh 192.168.1.12  
Enter passphrase for key'/root/.ssh/id_rsa':  
Last login: Tue Aug  6 22:14:11 2013 from 192.168.1.11  
[root@serv02 ~]# exit  
logout  
Connection to 192.168.1.12 closed.  
[root@serv01 .ssh]# ssh-agent $SHELL  
[root@serv01 .ssh]# ssh-add  
Enter passphrase for /root/.ssh/id_rsa:  
Identity added: /root/.ssh/id_rsa(/root/.ssh/id_rsa)  
[root@serv01 .ssh]# ssh 192.168.1.12  
Last login: Tue Aug  6 22:18:36 2013 from 192.168.1.11  
 
八 xinetd和ssh结合使用
[plain] 
#进程:  
#1.独立守护进程:单独的向外提供服务,有单独的端口  
#2.超级守护进程:管理其他服务 xinetd  
#xinetd:不对外提供服务,管理服务  
[root@serv01 .ssh]# yum install xinetd* -y  
[root@serv01 .ssh]# chkconfig  
auditd                0:off       1:off       2:on       3:on       4:on       5:on       6:off  
avahi-daemon         0:off       1:off       2:off       3:on       4:on       5:on       6:off  
crond                0:off       1:off       2:on       3:on       4:on       5:on       6:off  
ip6tables      0:off       1:off       2:off       3:off       4:off       5:off       6:off  
iptables       0:off       1:off       2:off       3:off       4:off       5:off       6:off  
messagebus          0:off       1:off       2:on       3:on       4:on       5:on       6:off  
netconsole     0:off       1:off       2:off       3:off       4:off       5:off       6:off  
netfs                 0:off       1:off       2:off       3:on       4:on       5:on       6:off  
network              0:off       1:off       2:on       3:on       4:on       5:on       6:off  
postfix        0:off       1:off       2:on       3:on       4:on       5:on       6:off  
rdisc                 0:off       1:off       2:off       3:off       4:off       5:off       6:off  
restorecond    0:off       1:off       2:off       3:off       4:off       5:off       6:off  
rhnsd                0:off       1:off       2:on       3:on       4:on       5:on       6:off  
rhsmcertd            0:off       1:off       2:off       3:on       4:on       5:on       6:off  
rsyslog        0:off       1:off       2:on       3:on       4:on       5:on       6:off  
saslauthd      0:off       1:off       2:off       3:off       4:off       5:off       6:off  
sshd                 0:off       1:off       2:on       3:on       4:on       5:on       6:off  
udev-post             0:off       1:on       2:on       3:on       4:on       5:on       6:off  
xinetd                0:off       1:off       2:off       3:on       4:on       5:on       6:off  
   
xinetd based services:  
       chargen-dgram:       off  
       chargen-stream: off  
       daytime-dgram:       off  
       daytime-stream: off  
       discard-dgram: off  
       discard-stream:   off  
       echo-dgram:          off  
       echo-stream:   off  
       tcpmux-server:  off  
       time-dgram:           off  
       time-stream:   off  
   
#服务被频繁地使用:不需要管理;比如Apache  
#当然服务使用少,需要被管理  
   
#包含文件:yum源 日志切换  
#配置文件  
[root@serv01 etc]# ls /etc/xinetd.conf  
/etc/xinetd.conf  
   
[root@serv01 etc]# cd xinetd.d/  
[root@serv01 xinetd.d]# ll  
total 44  
-rw-r--r--. 1 root root 1157 Feb 28  2011 chargen-dgram  
-rw-r--r--. 1 root root 1159 Feb 28  2011 chargen-stream  
-rw-r--r--. 1 root root 1157 Feb 28  2011 daytime-dgram  
-rw-r--r--. 1 root root 1159 Feb 28  2011 daytime-stream  
-rw-r--r--. 1 root root 1157 Feb 28  2011 discard-dgram  
-rw-r--r--. 1 root root 1159 Feb 28  2011 discard-stream  
-rw-r--r--. 1 root root 1148 Feb 28  2011 echo-dgram  
-rw-r--r--. 1 root root 1150 Feb 28  2011 echo-stream  
-rw-r--r--. 1 root root 1212 Feb 28  2011 tcpmux-server  
-rw-r--r--. 1 root root 1149 Feb 28  2011 time-dgram  
-rw-r--r--. 1 root root 1150 Feb 28  2011 time-stream  
   
[root@serv01 xinetd.d]# man xinetd.conf  
#stream:TCP  
#dgram:UDP  
   
#让xinetd服务管理sshd  
[root@serv01 xinetd.d]# vim ssh  
[root@serv01 xinetd.d]# cat ssh  
service ssh  
{  
       socket_type         = stream  
       wait                = no  
       nice                = 10  
       user                = root  
       server              =/usr/sbin/sshd  
       disable             = no  
}  
#查看服务,可以看到显示on  
[root@serv01 xinetd.d]# chkconfig  
xinetd                0:off       1:off       2:off       3:on       4:on       5:on       6:off  
   
xinetd based services:  
       chargen-dgram:       off  
       chargen-stream: off  
       daytime-dgram:       off  
       daytime-stream: off  
       discard-dgram: off  
       discard-stream:   off  
       echo-dgram:          off  
       echo-stream:   off  
       ssh:                  on  
       tcpmux-server:  off  
       time-dgram:           off  
       time-stream:   off  
   
#禁止,查看服务,可以看到显示off  
[root@serv01 xinetd.d]# vim ssh  
[root@serv01 xinetd.d]# cat ssh  
service ssh  
{  
       socket_type         = stream  
       wait                = no  
       nice                = 10  
       user                = root  
       server              =/usr/sbin/sshd  
       disable             = yes  
}  
   
[root@serv01 xinetd.d]# chkconfig  
   
xinetd                0:off       1:off       2:off       3:on       4:on       5:on       6:off  
   
xinetd based services:  
       chargen-dgram:       off  
       chargen-stream: off  
       daytime-dgram:       off  
       daytime-stream: off  
       discard-dgram: off  
       discard-stream:   off  
       echo-dgram:          off  
       echo-stream:   off  
       ssh:                  off  
       tcpmux-server:  off  
       time-dgram:           off  
       time-stream:   off  
   
#关闭sshd服务  
[root@serv01 xinetd.d]# /etc/init.d/sshdstop  
Stopping sshd:                                            [  OK  ]  
#重启xinetd服务  
[root@serv01 xinetd.d]# /etc/init.d/xinetdrestart  
Stopping xinetd:                                          [FAILED]  
Starting xinetd:                                           [ OK  ]  
#查看网络状态,发现没有xinetd  
[root@serv01 xinetd.d]# netstat -langput  
Active Internet connections (servers andestablished)  
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name    
tcp       0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      1144/master          
tcp       0      0 192.168.1.11:22             192.168.1.1:37741           ESTABLISHED 1377/0               
tcp       0      0 ::1:25                      :::*                        LISTEN      1144/master          
udp       0      0 0.0.0.0:5353                0.0.0.0:*                               1034/avahi-daemon:   
udp       0      0 0.0.0.0:54455               0.0.0.0:*                               1034/avahi-daemon:   
IPv6/IPv4 Group Memberships  
Interface       RefCnt Group  
--------------- ---------------------------  
lo              1      224.0.0.1  
eth1           1      224.0.0.251  
eth1            1      224.0.0.1  
eth0            1      224.0.0.251  
eth0            1      224.0.0.1  
lo              1      ff02::1  
eth1            1      ff02::1:ff07:dd45  
eth1            1      ff02::1  
eth0            1      ff02::1:ff07:dd3b  
eth0            1      ff02::1  
   
#远程连接,发生失败  
[root@larrywen .ssh]# ssh 192.168.1.11  
ssh: connect to host 192.168.1.11 port 22:Connection refused  
#再次编辑,加上     server_args      = -I  
#可以通过man xinetd.conf查看server_args  
[root@serv01 xinetd.d]# man xinetd.conf  
server_args  
[root@serv01 xinetd.d]# vim ssh  
[root@serv01 xinetd.d]# cat ssh  
service ssh  
{  
       socket_type         = stream  
       wait                = no  
       nice                = 10  
       user                = root  
       server              =/usr/sbin/sshd  
       disable             = no  
       server_args      = -i  
}  
#重启服务  
[root@serv01 xinetd.d]# /etc/init.d/xinetdrestart  
Stopping xinetd:                                          [  OK  ]  
Starting xinetd:                                           [  OK  ]  
#再次查看,发现有xinetd服务  
[root@serv01 xinetd.d]# netstat -langput  
Active Internet connections (servers andestablished)  
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name    
tcp       0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      1144/master          
tcp       0      0 192.168.1.11:22             192.168.1.1:37741           ESTABLISHED 1377/0               
tcp       0      0 :::22                       :::*                        LISTEN      2410/xinetd          
tcp       0      0 ::1:25                      :::*                        LISTEN      1144/master          
udp       0      0 0.0.0.0:5353                0.0.0.0:*                               1034/avahi-daemon:   
udp       0      0 0.0.0.0:54455               0.0.0.0:*                               1034/avahi-daemon:   
IPv6/IPv4 Group Memberships  
Interface       RefCnt Group  
--------------- ---------------------------  
lo              1      224.0.0.1  
eth1            1      224.0.0.251  
eth1            1      224.0.0.1  
eth0            1      224.0.0.251  
eth0            1      224.0.0.1  
lo              1      ff02::1  
eth1            1      ff02::1:ff07:dd45  
eth1            1      ff02::1  
eth0           1      ff02::1:ff07:dd3b  
eth0            1      ff02::1  
   
#远程连接  
[root@larrywen .ssh]# ssh 192.168.1.11  
The authenticity of host '192.168.1.11(192.168.1.11)' can't be established.  
RSA key fingerprint isf5:82:df:5b:07:2a:4a:b2:91:75:86:76:12:49:54:24.  
Are you sure you want to continueconnecting (yes/no)? yes  
Warning: Permanently added '192.168.1.11'(RSA) to the list of known hosts.  
root@192.168.1.11's password:  
Last login: Tue Aug  6 22:15:35 2013 from 192.168.1.12  
[root@serv01 ~]#  
#再次查看,发现有xinetd服务  
[root@serv01 xinetd.d]# netstat -langput  
Active Internet connections (servers andestablished)  
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name    
tcp       0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      1144/master          
tcp       0      0 192.168.1.11:22             192.168.1.1:37741           ESTABLISHED 1377/0               
tcp       0      0 192.168.1.11:22             192.168.1.1:52605           ESTABLISHED 2413/1               
tcp       0      0 :::22                       :::*                        LISTEN      2410/xinetd          
tcp       0      0 ::1:25                      :::*                        LISTEN      1144/master          
udp       0      0 0.0.0.0:5353                0.0.0.0:*                               1034/avahi-daemon:   
udp       0      0 0.0.0.0:54455               0.0.0.0:*                               1034/avahi-daemon:   
IPv6/IPv4 Group Memberships  
Interface       RefCnt Group  
--------------- ---------------------------  
lo              1      224.0.0.1  
eth1            1      224.0.0.251  
eth1            1      224.0.0.1  
eth0            1      224.0.0.251  
eth0            1      224.0.0.1  
lo              1      ff02::1  
eth1            1      ff02::1:ff07:dd45  
eth1            1      ff02::1  
eth0            1      ff02::1:ff07:dd3b  
eth0            1      ff02::1  
   
   
#查看sshd命令的位置  
[root@serv01 xinetd.d]# grep"SSHD" /etc/init.d/sshd -n  
41:SSHD=/usr/sbin/sshd  
(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜