怎么绕过sshd root net使用root登录

Linux配置使用SSH Key登录并禁用root密码登录 | 堕落的鱼
当前位置: &
打破沉默,我来发表评论鸟~& & Linux设置root不能直接ssh登录的方法& & 为增强安全& & 先增加一个普通权限的用户:& & #useradd uploader& & #passwd uploader& & //设置密码& & 生产机器禁止ROOT远程SSH登录:& & #vi /etc/ssh/sshd_config& & 把& & PermitRootLogin yes& & 改为&& & PermitRootLogin no& & 重启sshd服务& & #service sshd restart& & 远程管理用普通用户uploader登录,然后用 su root 切换到root用户拿到最高权限& & 作者 jsczxy2
声明:该文章系网友上传分享,此内容仅代表网友个人经验或观点,不代表本网站立场和观点;若未进行原创声明,则表明该文章系转载自互联网;若该文章内容涉嫌侵权,请及时向
上一篇:下一篇:
相关经验教程
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.001 收益linux 有没有办法禁止root直接登录,该怎么解决
&来源:读书人网&【读书人网():综合教育门户网站】
linux 有没有办法禁止root直接登录而是如果需要root的时候用su命令登陆。[最优解释]如果是远程利用ssh登录
linux 有没有办法禁止root直接登录而是如果需要root的时候用su命令登陆。[最优解释]如果是远程利用ssh登录的话修改/etc/ssh/sshd_config文件把PermitRootLogin&yes改成PermitRootLogin&no重启sshd[其他解释]引用:如果是远程利用ssh登录的话修改/etc/ssh/sshd_config文件把PermitRootLogin&yes改成PermitRootLogin&no重启sshd我照你的方法做了,不过导致别的账号也无法登陆了,我将参数改回yes,重启sshd,不生效了!无论用什么账号登陆&/var/log/secure&中都会显示&refused&connect&from&::ffff:ip地址[其他解释]引用:我照你的方法做了,不过导致别的账号也无法登陆了,我将参数改回yes,重启sshd,不生效了!无论用什么账号登陆&/var/log/secure&中都会显示&refused&connect&from&::ffff:ip地址杯具了除非你把设定文件修改错了&&或者更改了别的地方或者你曾经修改过设定文件&修改错误了&&但是没有重启过&&今天重启恰好生效了否则单改PermitRootLogin&no&不会造成这样的情况这一句只是否运行root用户远程登录有关&&不信你可以看看sshd_config配置手册/shouce/OpenSSH/sshd_config.html[其他解释]是不是当有远程ip连接到sshd服务上的时候,sshd服务无法重启?[其他解释]引用:是不是当有远程ip连接到sshd服务上的时候,sshd服务无法重启?可以重启啊&你在检查一下你的sshd_config文件修改之前备份了吗&&对比一下修改前和修改后的区别[其他解释]重启sshd时,/var/log/secure&中总出现:Jun&29&15:09:54&localhost&sshd[27932]:&Server&listening&on&::&port&22.Jun&29&15:09:54&localhost&sshd[27932]:&error:&Bind&to&port&22&on&0.0.0.0&failed:&Address&already&in&use.我将端口改为&39&则出现:Jun&29&15:09:54&localhost&sshd[27932]:&Server&listening&on&::&port&39.Jun&29&15:09:54&localhost&sshd[27932]:&error:&Bind&to&port&39&on&0.0.0.0&failed:&Address&already&in&use.[其他解释]重启sshd时,/var/log/secure&中总出现:Jun&29&15:09:54&localhost&sshd[27932]:&Server&listening&on&::&port&22.Jun&29&15:09:54&localhost&sshd[27932]:&error:&Bind&to&port&22&on&0.0.0.0&failed:&Address&already&in&use.-----------------------------别随便修改端口&&你是如何重启的用root执行如下命令&看看是哪个程序在使用22号端口/usr/sbin/lsof&-i&tcp:22如果本来就是sshd的话&就说明你的重启方法是错误的[其他解释]引用:重启sshd时,/var/log/secure&中总出现:Jun&29&15:09:54&localhost&sshd[27932]:&Server&listening&on&::&port&22.Jun&29&15:09:54&localhost&sshd[27932]:&error:&Bind&to&port&22&on&0.0.0.0&failed:&Address&alrea……[root@mail&~]#&lsof&-i&tcp:22COMMAND&&&PID&USER&&&FD&&&TYPE&&&&DEVICE&SIZE&NODE&NAMEsshd&&&&28216&root&&&&3u&&IPv6&&&&&&&&TCP&*:ssh&(LISTEN)
没错,就是sshd.我启动就是用&service&sshd&start&来启动。[其他解释]现在问题不在重启上我怀疑你把sshd_config改坏了我不是让你检查一下吗&&看5楼[其他解释]引用:没错,就是sshd.我启动就是用&service&sshd&start&来启动。直接service&sshd&reload就可以了现在关键是你要确认检查一下你的sshd_config文件!如果程序正在运行&修改完设定文件&service&sshd&reload就可以了[其他解释]好的&熊猫兄弟[其他解释]引用:引用:没错,就是sshd.我启动就是用&service&sshd&start&来启动。直接service&sshd&reload就可以了现在关键是你要确认检查一下你的sshd_config文件!如果程序正在运行&修改完设定文件&service&sshd&reload就可以了好,&等我把服务器重启后,仔细对比[其他解释]还有就是,我从内网别的机器用&ssh命令可以连接上。外网则私活不行,防火墙也没动![其他解释]引用:还有就是,我从内网别的机器用&ssh命令可以连接上。外网则私活不行,防火墙也没动!&netstat&-tnl&[其他解释]&grep&22的结果&给我看看[其他解释]引用:引用:还有就是,我从内网别的机器用&ssh命令可以连接上。外网则私活不行,防火墙也没动!&netstat&-tnl&[其他解释]&grep&22tcp&&&&&&&&0&&&&&&0&:::22&&&&&&&&&&&&&&&&&&&&&&&:::*&&&&&&&&&&&&&&&&&&&&&&&&LISTEN&&&&&[其他解释]&grep&22的结果&给我看看[root@mail&/]#&netstat&-tnl&[其他解释]&grep&22&&tcp&&&&&&&&0&&&&&&0&:::22&&&&&&&&&&&&&&&&&&&&&&&:::*&&&&&&&&&&&&&&&&&&&&&&&&LISTEN&&&&&&3400/sshd&&[其他解释]netstat&-tnlp&[其他解释]引用:也没问题&&对比设定文件了么?:::22&和&:::*&这样正确吗?我看别的服务时,前边都有几个0啊:[root@mail&/]#&netstat&-tnlp&------其他解决方案--------------------
也没问题&&对比设定文件了么?[其他解释]我快要郁闷死了我就让你改了PermitRootLogin&no这个配置怎么引出这么多问题哇![其他解释]&grep&25tcp&&&&&&&&0&&&&&&0&0.0.0.0:25&&&&&&&&&&&&&&&&&&0.0.0.0:*&&&&&&&&&&&&&&&&&&&LISTEN&&&&&&3786/master&[其他解释]/etc/ssh/sshd_config&的内容如下:该改的已经改回去了,仔细对比,没有啥异样啊!#Port&22#Protocol&2,1Protocol&2#AddressFamily&any#ListenAddress&0.0.0.0#ListenAddress&::#&HostKey&for&protocol&version&1#HostKey&/etc/ssh/ssh_host_key#&HostKeys&for&protocol&version&2#HostKey&/etc/ssh/ssh_host_rsa_key#HostKey&/etc/ssh/ssh_host_dsa_key#&Lifetime&and&size&of&ephemeral&version&1&server&key#KeyRegenerationInterval&1h#ServerKeyBits&768#&Logging#&obsoletes&QuietMode&and&FascistLogging#SyslogFacility&AUTHSyslogFacility&AUTHPRIV#LogLevel&INFO#&Authentication:#LoginGraceTime&2m#PermitRootLogin&yes#StrictModes&yes#MaxAuthTries&6#RSAAuthentication&yes#PubkeyAuthentication&yes#AuthorizedKeysFile&&&&&.ssh/authorized_keys#&For&this&to&work&you&will&also&need&host&keys&in&/etc/ssh/ssh_known_hosts#RhostsRSAAuthentication&no#&similar&for&protocol&version&2#HostbasedAuthentication&no#&Change&to&yes&if&you&don't&trust&~/.ssh/known_hosts&for#&RhostsRSAAuthentication&and&HostbasedAuthentication#IgnoreUserKnownHosts&no#IgnoreRhosts&yes#&To&disable&tunneled&clear&text&passwords,&change&to&no&here!#PasswordAuthentication&yes#PermitEmptyPasswords&noPasswordAuthentication&yes#&Change&to&no&to&disable&s/key&passwords#ChallengeResponseAuthentication&yesChallengeResponseAuthentication&no#&Kerberos&options#KerberosAuthentication&no#KerberosOrLocalPasswd&yes#KerberosTicketCleanup&yes#KerberosGetAFSToken&no#&GSSAPI&options#GSSAPIAuthentication&noGSSAPIAuthentication&yes#GSSAPICleanupCredentials&yesGSSAPICleanupCredentials&yes#&Set&this&to&'yes'&to&enable&PAM&authentication,&account&processing,#&and&session&processing.&If&this&is&enabled,&PAM&authentication&will#&be&allowed&through&the&ChallengeResponseAuthentication&mechanism.#&Depending&on&your&PAM&configuration,&this&may&bypass&the&setting&of#&PasswordAuthentication,&PermitEmptyPasswords,&and#&"PermitRootLogin&without-password".&If&you&just&want&the&PAM&account&and
#&session&checks&to&run&without&PAM&authentication,&then&enable&this&but&set#&ChallengeResponseAuthentication=no#UsePAM&noUsePAM&yes#&Accept&locale-related&environment&variablesAcceptEnv&LANG&LC_CTYPE&LC_NUMERIC&LC_TIME&LC_COLLATE&LC_MONETARY&LC_MESSAGESAcceptEnv&LC_PAPER&LC_NAME&LC_ADDRESS&LC_TELEPHONE&LC_MEASUREMENTAcceptEnv&LC_IDENTIFICATION&LC_ALL#AllowTcpForwarding&yes#GatewayPorts&no#X11Forwarding&noX11Forwarding&yes#X11DisplayOffset&10#X11UseLocalhost&yes#PrintMotd&yes#PrintLastLog&yes#TCPKeepAlive&yes#UseLogin&no#UsePrivilegeSeparation&yes#PermitUserEnvironment&no#Compression&delayed#ClientAliveInterval&0#ClientAliveCountMax&3#ShowPatchLevel&no#UseDNS&yes#PidFile&/var/run/sshd.pid#MaxStartups&10#PermitTunnel&no#ChrootDirectory&none#&no&default&banner&path#Banner&/some/path#&override&default&of&no&subsystemsSubsystem&&&&&&&sftp&&&&/usr/libexec/openssh/sftp-server[其他解释]:::22&和&:::*&这样正确吗----正确&&因为配置文件里#AddressFamily&any&是默认所以sshd会在ipv4和ipv6上同时监听tcp&&&&&&&&0&&&&&&0&0.0.0.0:25&&&&&&&&&&&&&&&&&&0.0.0.0:*&&&&&&&&&&&&&&&&&&&LISTEN&&&&&&3786/master&这个只是在ipv4上监听[其他解释]现在到底是什么状况?内网能用ssh连上?通过公网ip不能连上?是吗PermitRootLogin&yes改成PermitRootLogin&no之后内网还能通过root访问吗?[其他解释]引用:我快要郁闷死了我就让你改了PermitRootLogin&no这个配置怎么引出这么多问题哇!呵呵,是啊是啊,熊猫兄弟请海涵,事后一定加100分!出现别的问题,正好向你学习学习解决思路![其他解释]引用:现在到底是什么状况?内网能用ssh连上?通过公网ip不能连上?是吗是的,通过内网依然能访问,但公网不行。[其他解释]还有&看样子你是服务器&这样的信息别直接贴出来&可以站内短信发给我[其他解释]又改回了&PermitRootLogin&yes,还是那个密码,就能等上![其他解释]引用:PermitRootLogin&yes改成PermitRootLogin&no之后内网还能通过root访问吗?改成&no后,通过内网访问失败:让输入三次密码,三次后就拒绝了![其他解释]引用:引用:引用:PermitRootLogin&yes改成PermitRootLogin&no之后内网还能通过root访问吗?改成&no后,通过内网访问失败:
让输入三次密码,三次后就拒绝了!是root用户被拒绝了还是普通用户也无法访问?root被拒绝了,普通用户可以登录!也就是该参数在内网达到了目的了![其他解释]引用:引用:又改回了&PermitRootLogin&yes,还是那个密码,就能等上!你是指root用户&还是普通用户&PermitRootLogin&no&就是不让root用户登录在PermitRootLogin&yes的情况下,内网连接,无论root还是普通都能登录![其他解释]引用:引用:PermitRootLogin&yes改成PermitRootLogin&no之后内网还能通过root访问吗?改成&no后,通过内网访问失败:让输入三次密码,三次后就拒绝了!是root用户被拒绝了还是普通用户也无法访问?[其他解释]引用:又改回了&PermitRootLogin&yes,还是那个密码,就能等上!你是指root用户&还是普通用户&PermitRootLogin&no&就是不让root用户登录[其他解释]引用:你确认一下防火墙&&我觉得是防火墙禁止外网连接22号端口?防火墙查过了,没问题!而且我在远程用telnet&ip_address&22&试过了能够连接上,而非直接不让连接的现象![其他解释]引用:用公网不能连接的错误信息时什么啊用secureCRT连接,就是半天没反应!之后在服务器上查看&/var/log/secure文件,就会有如下错误记录:Jun&29&13:50:12&localhost&sshd[25809]:&refused&connect&from&::ffff:122.116.123.106&(::ffff:122.116.123.106)[其他解释]你确认一下防火墙&&我觉得是防火墙禁止外网连接22号端口?[其他解释]用公网不能连接的错误信息时什么啊[其他解释]我下班了&先回家了&一会到家了&再讨论[其他解释]试了,&远程还是无法登陆![其他解释]修改之前先备份把设定文件里的#AddressFamily&any改成&井号去掉AddressFamily&inet然后service&sshd&restart载测试一下[其他解释]引用:修改之前先备份把设定文件里的#AddressFamily&any改成&井号去掉AddressFamily&inet然后service&sshd&restart载测试一下嗯,下次一定注意!&[其他解释]引用:除了防火墙iptables&你还设置/etc/hosts.allow&和/etc/hosts.deny&文件了吗好了,现在可以了,熊猫兄弟!&果然是/etc/hosts.deny的问题,我装了一个denyhost&防暴力破解!denyhost把我们公司的公网ip添加到这个文件里,导致无法访问!这跟sshd本身的设置没有一点关系![其他解释]非常感谢,额外加100分!熊猫兄弟在北京吗?&如在周末找我骑行妙峰山,我请客,以表达我的感激之情![其他解释]引用:我下班了&先回家了&一会到家了&再讨论
好的&熊猫兄弟,真仗义,即便没解决的话,也学了不少东西![其他解释]除了防火墙iptables&你还设置/etc/hosts.allow&和/etc/hosts.deny&文件了吗Docker中开启sshd服务 | 4LinuxFun
VPS广而告知使用脚本防止ssh暴力破解分类: , , , &&&标签:
&&&评论: &&&阅读:1 views
前段时间买了个美国的vps,主要用于学习,也没太注意安全方面。今天随便看了下/var/log/secure日志:
Apr 11 11:10:05 kof sshd[18518]: Failed password for root from 1.226.82.197 port 36824 ssh2
Apr 11 11:10:10 kof sshd[18520]: Failed password for root from 1.226.82.197 port 36966 ssh2
Apr 11 11:10:15 kof sshd[18522]: Failed password for root from 1.226.82.197 port 37132 ssh2
Apr 11 11:10:19 kof sshd[18524]: Failed password for root from 1.226.82.197 port 37326 ssh2
Apr 11 11:10:24 kof sshd[18528]: Failed password for root from 1.226.82.197 port 37476 ssh2
Apr 11 11:10:29 kof sshd[18535]: Failed password for root from 1.226.82.197 port 37642 ssh2
Apr 11 11:10:34 kof sshd[18537]: Failed password for root from 1.226.82.197 port 37819 ssh2
Apr 11 11:10:39 kof sshd[18539]: Failed password for root from 1.226.82.197 port 38023 ssh2
Apr 11 11:10:44 kof sshd[18541]: Failed password for root from 1.226.82.197 port 38200 ssh2
大量的ssh认证失败日志 !平均5秒钟就有一次!
自己动手,丰衣足食,马上动手写个脚本:
#!/bin/bash
#这边可以自定义限制次数
LOGFILE=&/var/log/block_ssh.log&
TIME=$(date '+%b %e %H')
#example: Apr 11 11
BLOCK_IP=$(grep &$TIME& /var/log/secure|grep Failed|awk '{print $(NF-3)}'|sort|uniq -c|awk '$1&&$LIMIT&{print $1&:&$2}')
#将1小时内ssh认证失败超过30次的ip抓出来
for i in $BLOCK_IP
IP=$(echo $i|awk -F: '{print $2}')
iptables-save|grep INPUT|grep DROP|grep $IP&/dev/null
#先判断下是否已经被屏蔽
if [ $? -gt 0 ];then
iptables -A INPUT -s $IP -p tcp --dport 22 -j DROP
NOW=$(date '+%Y-%m-%d %H:%M')
echo -e &$NOW : $IP&&&${LOGFILE}
基本思路是统计出1小时ssh认证失败超过30次的IP,如果没屏蔽过的就将其加入iptables屏蔽。
这里就不设置白名单了,正常ip在一个小时内不会有那么多的Failed认证。
给予脚本执行权限:
chmod 755 /root/block_ssh.sh
最后加入到crontab定时任务,10分钟运行一次:
echo "*/10 * * * * root /root/block_ssh.sh" >>/etc/crontab
脚本运行一段时间后的日志:
[root@vps ~]# more /var/log/block_ssh_ip.log
02:10 : 210.75.241.20
02:10 : 59.60.7.102
11:30 : 189.47.32.19
13:30 : 184.107.119.213
18:30 : 222.122.20.145
05:10 : 188.127.226.66
09:00 : 69.163.33.98
10:10 : 184.106.165.164
22:10 : 65.117.150.99
06:00 : 124.205.252.158
最后附上提高ssh安全性的方法:
下面内容转自:http://www.opsers.org/linux-home/base/ssh-security-methods-to-improve.html
1. 修改sshd服务器的配置文件/etc/ssh/sshd_config,将部分参数参照如下修改,增强安全性。
系统缺省使用22号端口,将监听端口更改为其他数值(最好是1024以上的高端口,以免和其他常规服务端口冲突),这样可以增加入侵者探测系统是否运行了 sshd守护进程的难度。
对于在服务器上安装了多个网卡或配置多个IP地址的情况,设定sshd只在其中一个指定的接口地址监听,这样可以减少sshd的入口,降低入侵的可能性。
ListenAddress 192.168.0.1
如果允许用户使用root用户登录,那么黑客们可以针对root用户尝试暴力破解密码,给系统安全带来风险。
PermitRootLogin no
允许使用空密码系统就像不设防的堡垒,任何安全措施都是一句空话。
PermitEmptyPasswords no
只允许指定的某些用户通过ssh访问服务器,将ssh使用权限限定在最小的范围内。
AllowUsers sshuser1 sshuser2
同上面的AllowUsers类似,限定指定的用户组通过ssh访问服务器,二者对于限定访问服务器有相同的效果。
AllowGroups sshgroup
禁止使用版本1协议,因为其存在设计缺陷,很容易使密码被黑掉。
Protocol 2
关闭X11Forwarding,防止会话被劫持。
X11Forwarding no
sshd服务运行时每一个连接都要使用一大块可观的内存,这也是ssh存在拒绝服务攻击的原因。一台服务器除非存在许多管理员同时管理服务器,否则上面这 个连接数设置是够用了。
MaxStartups 5
注意:以上参数设置仅仅是一个示例,用户具体使用时应根据各自的环境做相应的更改。
2. 修改sshd服务器的配置文件/etc/ssh/sshd_config的读写权限,对所有非root用户设置只读权限,防止非授权用户修改sshd 服务的安全设置。
chmod 644 /etc/ssh/sshd_config
3. 设置TCP Wrappers。服务器默认接受所有的请求连接,这是非常危险的。使用TCP Wrappers可以阻止或允许应用服务仅对某些主机开放,给系统在增加一道安全屏障。这部分设置共涉计到两个文件:hosts.allow和 hosts.deny。
将那些明确允许的请求添加到/etc/hosts.allow中。如系统仅允许IP地址为192.168.0.15和10.0.0.11的主机使用 sshd服务,则添加如下内容:
sshd:192.168.0.15 10.0.0.11
将需要禁止使用的信息添加到/etc/hosts.deny中。如对除了在hosts.allow列表中明确允许使用sshd的用户外,所有其他用户都禁止使用sshd服务,则添加如下内容到hosts.deny文件中:
注意:系统对上述两个文件的判断顺序是先检查hosts.allow文件再查看hosts.deny文件,因此一个用户在hosts.allow允许使用网络资源,而同时在hosts.deny中禁止使用该网络资源,在这种情况下系统优先选择使用hosts.allow配置,允许用户使用该网络资源。
4. 尽量关闭一些系统不需要的启动服务。系统默认情况下启动了许多与网络相关的服务,因此相对应的开放了许多端口进行LISTENING(监听)。我们知道,开放的端口越多,系统从外部被入侵的可能也就越大,所以我们要尽量关闭一些不需要的启动服务,从而尽可能的关闭端口,提供系统的安全性。
通过以上步骤基本上将sshd服务设置上可能出现的漏洞堵上了,不需要投资,只要我们稍微花点时间调整一下配置,就可极大提高系统的安全环境,何乐而不为呢?
除非注明,文章皆由()原创,转载请标明本文地址
近期评论文章归档
2015 年六月
2014 年十二月
2014 年十一月
2014 年四月
2014 年一月
2013 年十二月
2013 年十一月
2013 年十月
2013 年九月
2013 年八月
2013 年七月
2013 年六月
2013 年五月
2013 年四月
2013 年三月
2013 年二月
2013 年一月
2012 年十二月
2012 年十一月
2012 年十月
2012 年九月
2012 年八月
2012 年七月
2012 年六月
2012 年五月
2012 年四月
2012 年三月
2012 年二月
2012 年一月
2011 年十二月
2011 年十一月
2011 年十月
2011 年九月
2011 年八月
2011 年六月
2010 年七月
2010 年四月
2009 年三月
& 2015&cszer -}

我要回帖

更多关于 sshd 禁止root登录 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信