<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://jackxiang.com/post//</link>
<title><![CDATA[[实践OK] 设置ssh日志记录防止ssh尝试多次密码攻击@/var/log/secure ，查看linux下的用户ssh登录日志，包括用户登录时所用的主机的ip和尝试失败的次数统计，ssh问题：ssh_exchange_identification: Connection closed by remote host...  OpenSSH普通用户无法登录的几种情况的解决方法]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[WEB2.0]]></category>
<pubDate>Sat, 15 Oct 2011 11:40:18 +0000</pubDate> 
<guid>http://jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	less&nbsp;&nbsp;/var/log/secure<br/>May 28 11:05:53 xxxx-web-api-upload_php_bj_yz_10_73_235_0 sshd[55974]: Failed password for root from 10.73.***.251 port 24222 ssh2<br/>May 28 11:06:28 xxxx-web-api-upload_php_bj_yz_10_73_235_0 sshd[55974]: pam_succeed_if(sshd:auth): requirement &quot;uid &gt;= 1000&quot; not met by user &quot;root&quot;<br/>May 28 11:06:30 xxxx-web-api-upload_php_bj_yz_10_73_235_0 sshd[55974]: Failed password for root from 10.73.***.251 port 24222 ssh2<br/>May 28 11:06:31 xxxx-web-api-upload_php_bj_yz_10_73_235_0 sshd[55974]: Connection closed by 10.73.***.251 [preauth]<br/>May 28 11:06:31 xxxx-web-api-upload_php_bj_yz_10_73_235_0 sshd[55974]: PAM 1 more authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=10.73.***.251&nbsp;&nbsp;user=root<br/>May 28 11:06:35 xxxx-web-api-upload_php_bj_yz_10_73_235_0 sshd[56210]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=10.73.***.251&nbsp;&nbsp;user=root<br/>May 28 11:06:35 xxxx-web-api-upload_php_bj_yz_10_73_235_0 sshd[56210]: pam_succeed_if(sshd:auth): requirement &quot;uid &gt;= 1000&quot; not met by user &quot;root&quot;<br/>May 28 11:06:37 xxxx-web-api-upload_php_bj_yz_10_73_235_0 sshd[56210]: Failed password for root from 10.73.***.251 port 24296 ssh2<br/>May 28 11:06:57 xxxx-web-api-upload_php_bj_yz_10_73_235_0 passwd: pam_unix(passwd:chauthtok): password changed for root<br/>May 28 11:07:02 xxxx-web-api-upload_php_bj_yz_10_73_235_0 sshd[56210]: pam_succeed_if(sshd:auth): requirement &quot;uid &gt;= 1000&quot; not met by user &quot;root&quot;<br/>May 28 11:07:04 xxxx-web-api-upload_php_bj_yz_10_73_235_0 sshd[56210]: Failed password for root from 10.73.***.251 port 24296 ssh2<br/>May 28 11:07:10 xxxx-web-api-upload_php_bj_yz_10_73_235_0 sshd[56210]: Connection closed by 10.73.***.251 [preauth]<br/>May 28 11:07:10 xxxx-web-api-upload_php_bj_yz_10_73_235_0 sshd[56210]: PAM 1 more authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=10.73.***.251&nbsp;&nbsp;user=root<br/><br/><br/>树莓派的ssh日志文件是：/var/log/auth.log ，对应CentOS的/var/log/secure文件吧？<br/>不完全正确。树莓派和CentOS都使用不同的日志文件来记录SSH登录活动。在树莓派上，SSH登录活动通常被记录在/var/log/auth.log文件中。而在CentOS上，SSH登录活动通常被记录在/var/log/secure文件中。<br/>如何看查看系统上的日志配置文件的实际位置？<br/><br/>检查以下文件来了解日志配置：<br/>/etc/rsyslog.conf<br/>auth,authpriv.*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /var/log/auth.log<br/>*.*;auth,authpriv.none&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-/var/log/syslog<br/>#cron.*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /var/log/cron.log<br/>daemon.*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-/var/log/daemon.log<br/>kern.*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-/var/log/kern.log<br/>lpr.*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -/var/log/lpr.log<br/>mail.*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-/var/log/mail.log<br/>user.*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-/var/log/user.log<br/><br/><br/>/etc/rsyslog.d/目录下的其他配置文件<br/>/etc/syslog-ng/syslog-ng.conf（如果使用syslog-ng）<br/><br/><br/><br/>背景：linux ssh 无法登录 错误提示 Connection closed by foreign host，之前都好好的，现在突然就有问题了，最后查到是因为有人做机器盘点，可能对一些ip作了白名单以限定其对本机的ssh的访问。<br/><br/>[root@localhost htdocs]# telnet 10.70.32.58 22<br/>Trying 10.70.32.58...<br/>Connected to localhost (10.70.32.58).<br/>Escape character is &#039;^]&#039;.<br/>jackxiang<br/>jkdfjdl<br/>Connection closed by foreign host.<br/><br/>这个怎么办？？？<br/>1.ssh -vvv打印debug调试<br/>2.检查iptable等是否有做端口限制<br/>3.解决办法是：打电话给机房要求强制重启，然后就莫名其妙的可以了……<br/><br/>ssh -vvv xiangdong@10.70.32.58 22 <br/>OpenSSH_4.3p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008<br/>debug1: Reading configuration data /etc/ssh/ssh_config<br/>debug1: Applying options for *<br/>debug2: ssh_connect: needpriv 0<br/>debug1: Connecting to 10.70.32.58 [10.70.32.58] port 22.<br/>debug1: Connection established.<br/>debug1: permanently_set_uid: 0/0<br/>debug1: identity file /root/.ssh/identity type -1<br/>debug1: identity file /root/.ssh/id_rsa type -1<br/>debug1: identity file /root/.ssh/id_dsa type -1<br/>debug1: loaded 3 keys<br/>ssh_exchange_identification: Connection closed by remote host<br/><br/>使用Kerberos登陆ssh的时候，出现下列问题：<br/>ssh_exchange_identification: Connection closed by remote host<br/>解决办法：<br/>修改/etc/hosts.allow文件，加入 sshd:ALL，然后重启sshd服务<br/>http://wangmukun.blog.51cto.com/651644/202747<br/> vi /etc/hosts.allow<br/><br/>sshd:10.65.*.* 10.4.*.* 192.168.112.195 110.64.6.58 110.70.58.84 202.108.16.65/255.255.255.224 211.108.17.* 211.181.168.*<br/>加上自己的IP在后面，/etc/init.d/sshd status<br/>sshd (pid 15818 7913 7911 7696 7694) is running...<br/>/etc/init.d/sshd restart <br/>或： service sshd restart<br/>摘自：http://blog.163.com/zhengjiu_520/blog/static/3559830620118294059556/<br/><br/><br/>有可能是使用了，使用SSH公钥(id_dsa.pub)实现免密码登录？实践证明不是的：<br/>http://www.ibm.com/developerworks/cn/linux/l-backup/index.html#N10058<br/><br/><br/>OpenSSH普通用户无法登录的几种情况的解决方法:（&nbsp;&nbsp;#UsePAM yes 是注销了的，因为不需要PAM）<br/>1 验证方式不支持<br/>&nbsp;&nbsp;如客户端登录时提示如下：<br/>&nbsp;&nbsp;&nbsp;&nbsp;[huzw@CentOS-6-37 ~]$ ssh monitor@192.168.1.5<br/>&nbsp;&nbsp;&nbsp;&nbsp;Permission denied (publickey,keyboard-interactive).<br/>&nbsp;&nbsp;解决方法：<br/>&nbsp;&nbsp;&nbsp;&nbsp;设置sshd的配置文件（sshd_config）的这条配置：PasswordAuthentication yes<br/>&nbsp;&nbsp;&nbsp;&nbsp;然后重启服务：service sshd restart<br/>2 普通用户登录密码始终错误，sshd启动有报错<br/>&nbsp;&nbsp;sshd启动报错：<br/>&nbsp;&nbsp;&nbsp;&nbsp;Unsupported option GSSAPIAuthentication<br/>&nbsp;&nbsp;&nbsp;&nbsp;Unsupported option GSSAPICleanupCredentials<br/>&nbsp;&nbsp;解决方法：<br/>&nbsp;&nbsp;&nbsp;&nbsp;注销sshd的配置文件（sshd_config）的如下配置:<br/>&nbsp;&nbsp;&nbsp;&nbsp;#GSSAPIAuthentication yes<br/>&nbsp;&nbsp;&nbsp;&nbsp;#GSSAPICleanupCredentials yes<br/>&nbsp;&nbsp;&nbsp;&nbsp;#UsePAM yes<br/>&nbsp;&nbsp;&nbsp;&nbsp;然后重启服务：service sshd restart<br/>来自：http://blog.csdn.net/huzhenwei/article/details/7486737<br/>————————————————————————————————————————————————————<br/><br/>设置ssh日志记录 ：<br/>1、修改/etc/ssh/sshd_config <br/>将SyslogFacility AUTHPRIV改为SyslogFacility local5<br/>2 修改/etc/syslog.conf<br/>添加如下两行：<br/>＃ save sshd messages also to sshd.log<br/>local5.* /data/log/sshd.log<br/>3、重启sshd和syslog服务<br/>然后你可以使用ssh来登录看看发现与sshd有关的信息都记录到了sshd.log中。不在是messages。 <br/><br/>摘自：http://blog.chinaunix.net/uid-24500107-id-2602874.html<br/><br/>linux下怎么查看ssh的用户登录日志：<br/>参考：http://www.cnblogs.com/wangkangluo1/archive/2011/09/23/2185976.html<br/><br/><br/>SSH的登录次数查看：<br/><textarea name="code" class="html" rows="15" cols="100">
root@116.255.139.240:/var/log#
grep &quot;Failed password for root&quot; /var/log/secure &#124; awk &#039;&#123;print $11&#125;&#039; &#124; sort &#124; uniq -c &#124; sort -nr
grep &quot;Failed password for root&quot; /var/log/secure.2 &#124; awk &#039;&#123;print $11&#125;&#039; &#124; sort &#124; uniq -c &#124; sort -nr
1467 211.136.163.116
260 61.131.47.117
217 111.160.245.53
176 220.181.47.147
150 122.194.14.90
81 222.134.33.132
</textarea><br/><br/>指定尝试密码次数：<br/>vi /etc/ssh/sshd_config <br/><textarea name="code" class="html" rows="15" cols="100">
# Authentication:
#LoginGraceTime 2m
#PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
MaxAuthTries 6
</textarea><br/>将默认的值改掉即可CentOS6 默认可以允许做3次尝试重启SSH。<br/>MaxAuthTries 1<br/>这里表示只允许输错一回密码.<br/>我们要注意的是除了SSH自身的选项控制认证次数外,它还通过pam进行验证,所以如果我们设置MaxAuthTries 10,则允许输错密码的次数可能还是3,如果MaxAuthTries 2,则以MaxAuthTries为准.<br/>如果是MaxAuthTries 2,我们输错密码的提示如下:<br/>ssh&nbsp;&nbsp;root@192.168.27.142<br/>root@192.168.27.142&#039;s password: <br/>Permission denied, please try again.<br/>root@192.168.27.142&#039;s password: <br/>Received disconnect from 192.168.27.142: 2: Too many authentication failures for root<br/>修改默认登录时间<br/>当你连接到 SSH 后，默认是提供 2 分钟的时间让你输入帐户和密码来进行登录，你可以修改这个时间为 1 分钟或 30 秒。<br/><br/>LoginGraceTime 1m<br/>参考：http://wowubuntu.com/ssh-security.html<br/>http://kyle.itpub.net/post/1626/491466<br/><br/>suse下可以这样：less /var/log/faillog<br/>more /var/log/secure<br/>who /var/log/wtmp<br/><br/>干了些什么？<br/>root账户下输入su - username<br/>切换到username下输入<br/>history<br/>能看到这个用户历史命令，默认最近的1000条..<br/><br/>cat /var/log/secure 这个 日志记录 是记录了 所有 用户登陆信息 <br/>干了什么 可以看每一个用户的 history ...<br/>tail -f&nbsp;&nbsp;/（日志文件目录）&nbsp;&nbsp; 查看日志命令<br/><br/>ctrl+c停止打印<br/><br/>ls&nbsp;&nbsp;-al&nbsp;&nbsp;查看文件的详细信息路径等<br/><br/>vi&nbsp;&nbsp;/（日志文件目录）&nbsp;&nbsp;打开日志<br/><br/>/搜索字符<br/><br/>退出：按ESC后，按“:”，输入q，敲回车<br/><br/><br/><br/><br/>近日，各大网站密码暴露，得修改下密码：<br/>以root身份登陆，执行：passwd修改密码。useradd&nbsp;&nbsp; 用户名,添加用户。 <br/>具体的如下： <br/>#passwd&nbsp;&nbsp; root <br/>输入root密码，输入两便。 <br/>#useradd&nbsp;&nbsp; 用户名 <br/>#passwd&nbsp;&nbsp; 用户名 <br/>密码，输入两便<br/><br/><br/>———————————ssh_exchange_identification: Connection closed by remote host————————————<br/>ssh问题：ssh_exchange_identification: Connection closed by remote host...&nbsp;&nbsp;<br/>ssh/scp:ssh_exchange_identification:Connection closed by remote host的问题<br/>使用ssh/scp时，出现下列问题： <br/>ssh_exchange_identification: Connection closed by remote host&nbsp;&nbsp;<br/>解决办法：&nbsp;&nbsp;www.2cto.com&nbsp;&nbsp;<br/>修改/etc/hosts.allow文件，加入 sshd:ALL，然后重启sshd服务.<br/>修改/etc/hosts.deny, 将 ALL: ALL 注释掉.<br/>摘自：http://www.2cto.com/os/201210/161948.html<br/><br/>ssh问题：ssh_exchange_identification: Connection closed by remote host...<br/>刚刚一个朋友告诉我SSH连接不上服务器了,重启电脑也不管用.我仔细看了一下,老报如下错误:<br/>ssh_exchange_identification: Connection closed by remote host<br/>the connection to the remote host was lost . this usually means that you network connection went down or that the remote host was rebooted <br/>most network outages are short. and thus trying again may work<br/>我在网上google了一下,得解决方案:<br/>(1)&nbsp;&nbsp;最简单的解决方法就是让/etc/hosts.allow 和/etc/hosts.deny里面的所有信息都不生效,全部注销掉,重启SSH服务就可以了.<br/>但是，有时候在你修改后不久，仍然会出现/etc/hosts.deny自动修改，让你还是登录不了，此时需要检查denyhosts服务。<br/> 在redhat系列的版本中，有一个denyhosts服务，会自动覆盖/etc/hosts.deny文件，在确认要登录的机器没有问题时，可以简单做如下处理：<br/>/etc/init.d/denyhosts stop<br/>(2)&nbsp;&nbsp;但是还有一种情况，就是客户端连接数过多时，也会报这个错误。缺省情况下，SSH终端连接数最大为10个。在这种情况下，需要改SSH的配置文件，<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;解决方案：<br/>1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;修改/etc/ssh/sshd_config中#MaxStartups 10，将其改为MaxStartups 1000<br/>2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;重启SSH服务，/etc/init.d/ssh restart<br/><br/>摘自：http://chyd96.blog.163.com/blog/static/627060762011916115414327/<br/><br/><br/><br/>————————————————————————————更多相关知识——————————————————————————<br/>Linux踢出其他正在SSH登陆用户<br/>1、查看系统在线用户<br/>[root@apache ~]# w <br/>14:15:41 up 42 days, 56 min,&nbsp;&nbsp;2 users,&nbsp;&nbsp;load average: 0.07, 0.02, 0.00 <br/>USER&nbsp;&nbsp;&nbsp;&nbsp; TTY&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FROM&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LOGIN@&nbsp;&nbsp; IDLE&nbsp;&nbsp; JCPU&nbsp;&nbsp; PCPU WHAT <br/>root&nbsp;&nbsp;&nbsp;&nbsp; pts/0&nbsp;&nbsp;&nbsp;&nbsp;116.204.64.165&nbsp;&nbsp; 14:15&nbsp;&nbsp;&nbsp;&nbsp;0.00s&nbsp;&nbsp;0.06s&nbsp;&nbsp;0.04s w <br/>root&nbsp;&nbsp;&nbsp;&nbsp; pts/1&nbsp;&nbsp;&nbsp;&nbsp;116.204.64.165&nbsp;&nbsp; 14:15&nbsp;&nbsp;&nbsp;&nbsp;2.00s&nbsp;&nbsp;0.02s&nbsp;&nbsp;0.02s –bash<br/>2、查看当前自己占用终端，别把自己干掉了<br/>[root@apache ~]# who am i <br/>root&nbsp;&nbsp;&nbsp;&nbsp; pts/02013-01-16 14:15 (116.204.64.165)<br/>3、用pkill 命令剔除对方<br/>[root@apache ~]# pkill -kill -t pts/1<br/>4、用w命令在看看干掉没。<br/>[root@apache ~]# w <br/>14:19:47 up 42 days,&nbsp;&nbsp;1:00,&nbsp;&nbsp;1 user,&nbsp;&nbsp;load average: 0.00, 0.00, 0.00 <br/>USER&nbsp;&nbsp;&nbsp;&nbsp; TTY&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FROM&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LOGIN@&nbsp;&nbsp; IDLE&nbsp;&nbsp; JCPU&nbsp;&nbsp; PCPU WHAT <br/>root&nbsp;&nbsp;&nbsp;&nbsp; pts/0&nbsp;&nbsp;&nbsp;&nbsp;116.204.64.165&nbsp;&nbsp; 14:15&nbsp;&nbsp;&nbsp;&nbsp;0.00s&nbsp;&nbsp;0.03s&nbsp;&nbsp;0.00s w<br/> <br/>后记：<br/>如果最后查看还是没有干掉，建议加上-9 强制杀死。<br/>[root@apache ~]# pkill -9 -t pts/1<br/>From:http://www.myhack58.com/Article/48/66/2013/37031.htm<br/><br/>CentOS6下限制SSH远程终端连接数:<br/>方案：<br/>1)修改/etc/ssh/sshd_config中#MaxStartups 10:30:60，将其改为MaxStartups 1000<br/>2)重启SSH服务，/etc/init.d/ssh restart<br/>Centos系统默认连接时间120秒，如果远程终端连接数过多，则会出现超时连接，解决办法如下：<br/>1)修改/etc/ssh/sshd_config中LoginGraceTime 120,将其改为LoginGraceTime 0，其中0表示不限制连接时间<br/>2)重启SSH服务，/etc/init.d/ssh restart<br/><br/>From:http://www.21ops.com/linux/8220.html
]]>
</description>
</item><item>
<link>http://jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] [实践OK] 设置ssh日志记录防止ssh尝试多次密码攻击@/var/log/secure ，查看linux下的用户ssh登录日志，包括用户登录时所用的主机的ip和尝试失败的次数统计，ssh问题：ssh_exchange_identification: Connection closed by remote host...  OpenSSH普通用户无法登录的几种情况的解决方法]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>