Linux 禁止root用户登录


本文的Linux操作系统运行在Cortex-A8的硬件之上,其为我们公司的一款产品,为了保护产品的安全,我们限制了root用户的本地登录和远程登录权限。

        一、禁止root本地登录:

                方法: 在/etc 目录下创建文件 securetty,即 touch    /etc/securetty

                原因:本地登录login会读取文件/etc/login.defs, 该文件65 - 70行的内容如下
               # If defined, either full pathname of a file containing device names or  a ":" delimited list of device names.  Root logins will be allowed only  upon these devices.
               CONSOLE        /etc/securetty

               #CONSOLE    console:tty01:tty02:tty03:tty04

               创建securetty文件即可。该段英文释义本人不是很理解,希望能看懂的朋友解释一下。

        二、禁止root远程登录:

              1. 首先考虑目标板能够被远程登录是使用了ssh服务,本产品已经有ssh服务,故不需要移植,若没有ssh服务还需要移植。

               2.本产品移植的ssh服务为dropbear, 它是一款轻量级的ssh服务

               3.方法:该服务是由脚本启动,查看/etc/init.d/dropbear 文件,发现第77行对应root登录权限,且最后参数为1, 将其改为0发现正好实现了功能,将

             # F) root login                                        
            config_get_bool val "${section}" RootLogin 1
            修改为
            # F) root login                                        
            config_get_bool val "${section}" RootLogin 0        
           启动ssh服务:
               /etc/init.d/dropbear restart 
            即可。

               若ssh服务为openssh,则在/etc/ssh/sshd_config文件下将
               #PermitRootLogin yes  
               改为
               PermitRootLogin no
               即可

综上为限制root用户本地登录和远程登录的方法。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM