{
    "content": [
        {
            "type": "text",
            "text": "# pam_shells (man)\n\n## NAME\n\npamshells - PAM module to check for valid login shell\n\n## SYNOPSIS\n\npamshells.so\n\n## DESCRIPTION\n\npamshells is a PAM module that only allows access to the system if the user's shell is\nlisted in /etc/shells.\n\n## Sections\n\n- **NAME**\n- **SYNOPSIS**\n- **DESCRIPTION**\n- **OPTIONS**\n- **MODULE TYPES PROVIDED**\n- **RETURN VALUES**\n- **EXAMPLES**\n- **SEE ALSO**\n- **AUTHOR**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "pam_shells",
        "section": "",
        "mode": "man",
        "summary": "pamshells - PAM module to check for valid login shell",
        "synopsis": "pamshells.so",
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [
            "auth  required  pamshells.so"
        ],
        "see_also": [
            {
                "name": "shells",
                "section": "5",
                "url": "https://www.chedong.com/phpMan.php/man/shells/5/json"
            },
            {
                "name": "pam.conf",
                "section": "5",
                "url": "https://www.chedong.com/phpMan.php/man/pam.conf/5/json"
            },
            {
                "name": "pam.d",
                "section": "5",
                "url": "https://www.chedong.com/phpMan.php/man/pam.d/5/json"
            },
            {
                "name": "pam",
                "section": "7",
                "url": "https://www.chedong.com/phpMan.php/man/pam/7/json"
            }
        ],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 5,
                "subsections": []
            },
            {
                "name": "OPTIONS",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "MODULE TYPES PROVIDED",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "RETURN VALUES",
                "lines": 9,
                "subsections": []
            },
            {
                "name": "EXAMPLES",
                "lines": 4,
                "subsections": []
            },
            {
                "name": "SEE ALSO",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "AUTHOR",
                "lines": 5,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "pamshells - PAM module to check for valid login shell\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "pamshells.so\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "pamshells is a PAM module that only allows access to the system if the user's shell is\nlisted in /etc/shells.\n\nIt also checks if /etc/shells is a plain file and not world writable.\n",
                "subsections": []
            },
            "OPTIONS": {
                "content": "This module does not recognise any options.\n",
                "subsections": []
            },
            "MODULE TYPES PROVIDED": {
                "content": "The auth and account module types are provided.\n",
                "subsections": []
            },
            "RETURN VALUES": {
                "content": "PAMAUTHERR\nAccess to the system was denied.\n\nPAMSUCCESS\nThe user's login shell was listed as valid shell in /etc/shells.\n\nPAMSERVICEERR\nThe module was not able to get the name of the user.\n",
                "subsections": []
            },
            "EXAMPLES": {
                "content": "auth  required  pamshells.so\n\n\n",
                "subsections": []
            },
            "SEE ALSO": {
                "content": "shells(5), pam.conf(5), pam.d(5), pam(7)\n",
                "subsections": []
            },
            "AUTHOR": {
                "content": "pamshells was written by Erik Troan <ewt@redhat.com>.\n\n\n\nLinux-PAM Manual                             06/08/2020                                PAMSHELLS(8)",
                "subsections": []
            }
        }
    }
}