Linux启动与禁止SSH用户及IP的登录

以下就针对SSH方面讨论一下。假设有人特别关注Linux环境的安全性,第一就从login方面来进行讨论

1:Linux启动或禁止SSH root用户的登录

2:Linux限制SSH用户

事实上这些东西就是改动一个系统的配置文件

  1. [[email protected] ~]# vi /etc/ssh/sshd_config

我们能够查看

  1. #PermitRootLogin yes

把前面的#号去掉,yes改动为no就可以

yes 就是能够使用SSH方式的root登录

no就是禁止使用SSH方式的root登录

  1. login as: root
  2. [email protected]‘s password:
  3. Access denied
  4. [email protected]‘s password:

另外假设须要限制SSH方式的用户登录 改动例如以下參数

  1. AllowUsers arcsde

arcsde是我操作系统的用户,假设没实用户能够手动加入AllowUsers

这种话,仅仅能arcsde登录了

其它用户登录不了了(oracle)

  1. login as: oracle
  2. [email protected]‘s password:
  3. Access denied
  4. [email protected]‘s password:

以上改动完配置文件,必须又一次启动SSH服务才干生效

  1. [[email protected] ~]# /etc/init.d/sshd restart
  2. Stopping sshd:                                             [  OK  ]
  3. Starting sshd:                                             [  OK  ]

可能会有人会问到假设我设置了,每次都是Access denied,有没有一些能够进行信息的提示。这肯定能够啊

我们能够改动例如以下文件

  1. [[email protected] ~]# vi /etc/issue.net

然后加入例如以下信息

  1. ###############################################################
  2. #                    Welcome to redhatserver                                    #
  3. #          All connections are monitored and recorded                            #
  4. #  Disconnect IMMEDIATELY if you are not an authorized user!                    #
  5. #                       Please tel 400-819-2881
  6. ###############################################################

我们仍然须要改动sshd_config里面的參数

  1. Banner /etc/issue.net

后面相应的就是相关文件的路径。重新启动服务就可以

然后我们測试一下

  1. login as: root
  2. Red Hat Enterprise Linux Server release 5.5 (Tikanga)
  3. Kernel \r on an \m
  4. ###############################################################
  5. #                    Welcome to redhatserver                                    #
  6. #          All connections are monitored and recorded
  7. #
  8. #  Disconnect IMMEDIATELY if you are not an authorized user!                    #
  9. #Please tel 400-819-2881
  10. ###############################################################
  11. [email protected]‘s password:

当我们输入root用户,系统就自己主动提示了。

另外也能够在输入password的时候提示。假设是这种话。我们改动例如以下文件就可以

  1. vi /etc/motd

启动或禁止用户IP登录

除了能够禁止某个用户登录,我们还能够针对固定的IP进行禁止登录,这里面事实上就是改动了配置文件

查看 /etc/hosts.allow配置文件。设置同意登录的IP

  1. [[email protected] ~]# more /etc/hosts.allow
  2. #
  3. # hosts.allow   This file describes the names of the hosts which are
  4. #               allowed to use the local INET services, as decided
  5. #               by the ‘/usr/sbin/tcpd‘ server.
  6. #
  7. sshd:192.168.220.164:allow

查看/etc/hosts.deny文件。设置sshd:ALL

  1. [[email protected] ~]# more /etc/hosts.deny
  2. #
  3. # hosts.deny    This file describes the names of the hosts which are
  4. #               *not* allowed to use the local INET services, as decided
  5. #               by the ‘/usr/sbin/tcpd‘ server.
  6. #
  7. # The portmap line is redundant, but it is left to remind you that
  8. # the new secure portmap uses hosts.deny and hosts.allow.  In particular
  9. # you should know that NFS uses portmap!
  10. sshd:ALL

也就是说,我们禁止全部IP,可是同意相关IP登录。

另外,假设对sshd_config文件里的配置參数感兴趣能够參考:http://doc.licess.org/openssh/sshd_config.html

  1. SSHD_CONFIG(5)            OpenBSD Programmer‘s Manual           SSHD_CONFIG(5)
  2. 名称
  3. sshd_config - OpenSSH SSH server守护进程配置文件
  4. 大纲
  5. /etc/ssh/sshd_config
  6. 描写叙述
  7. sshd(8) 默认从 /etc/ssh/sshd_config 文件(或通过 -f 命令行选项指定的文件)读取配置信息。
  8. 配置文件是由"指令 值"对组成的。每行一个。空行和以‘#‘开头的行都将被忽略。
  9. 假设值中含有空白符或者其它特殊符号。那么能够通过在两边加上双引號(")进行界定。

  10. [注意]值是大写和小写敏感的。但指令是大写和小写无关的。

  11. 当前全部能够使用的配置指令例如以下:
  12. AcceptEnv
  13. 指定client发送的哪些环境变量将会被传递到会话环境中。

    [注意]仅仅有SSH-2协议支持环境变量的传递。

  14. 细节能够參考 ssh_config(5) 中的 SendEnv 配置指令。
  15. 指令的值是空格分隔的变量名列表(当中能够使用‘*‘和‘?‘作为通配符)。

    也能够使用多个 AcceptEnv 达到相同的目的。

  16. 须要注意的是,有些环境变量可能会被用于绕过禁止用户使用的环境变量。

    因为这个原因。该指令应当小心使用。

  17. 默认是不传递不论什么环境变量。
  18. AddressFamily
  19. 指定 sshd(8) 应当使用哪种地址族。

    取值范围是:"any"(默认)、"inet"(仅IPv4)、"inet6"(仅IPv6)。

  20. AllowGroups
  21. 这个指令后面跟着一串用空格分隔的组名列表(当中能够使用"*"和"?"通配符)。默认同意全部组登录。
  22. 假设使用了这个指令,那么将仅同意这些组中的成员登录,而拒绝其他全部组。
  23. 这里的"组"是指"主组"(primary group),也就是/etc/passwd文件里指定的组。

  24. 这里仅仅同意使用组的名字而不同意使用GID。

    相关的 allow/deny 指令依照下列顺序处理:

  25. DenyUsers, AllowUsers, DenyGroups, AllowGroups
  26. AllowTcpForwarding
  27. 是否同意TCP转发。默认值为"yes"。
  28. 禁止TCP转发并不能增强安全性,除非禁止了用户对shell的訪问。由于用户能够安装他们自己的转发器。

  29. AllowUsers
  30. 这个指令后面跟着一串用空格分隔的username列表(当中能够使用"*"和"?

    "通配符)。默认同意全部用户登录。

  31. 假设使用了这个指令,那么将仅同意这些用户登录,而拒绝其他全部用户。
  32. 假设指定了 [email protected] 模式的用户。那么 USER 和 HOST 将同一时候被检查。
  33. 这里仅仅同意使用用户的名字而不同意使用UID。

    相关的 allow/deny 指令依照下列顺序处理:

  34. DenyUsers, AllowUsers, DenyGroups, AllowGroups
  35. AuthorizedKeysFile
  36. 存放该用户能够用来登录的 RSA/DSA 公钥。
  37. 该指令中能够使用下列依据连接时的实际情况进行展开的符号:
  38. %% 表示‘%‘、%h 表示用户的主文件夹、%u 表示该用户的username。
  39. 经过扩展之后的值必需要么是绝对路径。要么是相对于用户主文件夹的相对路径。
  40. 默认值是".ssh/authorized_keys"。
  41. Banner
  42. 将这个指令指定的文件里的内容在用户进行认证前显示给远程用户。
  43. 这个特性仅能用于SSH-2。默认什么内容也不显示。"none"表示禁用这个特性。

  44. ChallengeResponseAuthentication
  45. 是否同意质疑-应答(challenge-response)认证。默认值是"yes"。

  46. 全部 login.conf(5) 中同意的认证方式都被支持。
  47. Ciphers
  48. 指定SSH-2同意使用的加密算法。

    多个算法之间使用逗号分隔。能够使用的算法例如以下:

  49. "aes128-cbc", "aes192-cbc", "aes256-cbc", "aes128-ctr", "aes192-ctr", "aes256-ctr",
  50. "3des-cbc", "arcfour128", "arcfour256", "arcfour", "blowfish-cbc", "cast128-cbc"
  51. 默认值是能够使用上述全部算法。
  52. ClientAliveCountMax
  53. sshd(8) 在未收到不论什么client回应前最多同意发送多少个"alive"消息。默认值是 3 。
  54. 到达这个上限后,sshd(8) 将强制断开连接、关闭会话。
  55. 须要注意的是,"alive"消息与 TCPKeepAlive 有非常大差异。
  56. "alive"消息是通过加密连接发送的,因此不会被欺骗;而 TCPKeepAlive 却是能够被欺骗的。
  57. 假设 ClientAliveInterval 被设为 15 而且将 ClientAliveCountMax 保持为默认值。
  58. 那么无应答的client大约会在45秒后被强制断开。这个指令仅能够用于SSH-2协议。
  59. ClientAliveInterval
  60. 设置一个以秒记的时长,假设超过这么长时间没有收到client的不论什么数据。
  61. sshd(8) 将通过安全通道向client发送一个"alive"消息,并等候应答。
  62. 默认值 0 表示不发送"alive"消息。

    这个选项仅对SSH-2有效。

  63. Compression
  64. 是否对通信数据进行加密,还是延迟到认证成功之后再对通信数据加密。

  65. 可用值:"yes", "delayed"(默认), "no"。
  66. DenyGroups
  67. 这个指令后面跟着一串用空格分隔的组名列表(当中能够使用"*"和"?"通配符)。默认同意全部组登录。

  68. 假设使用了这个指令,那么这些组中的成员将被拒绝登录。
  69. 这里的"组"是指"主组"(primary group),也就是/etc/passwd文件里指定的组。
  70. 这里仅仅同意使用组的名字而不同意使用GID。相关的 allow/deny 指令依照下列顺序处理:
  71. DenyUsers, AllowUsers, DenyGroups, AllowGroups
  72. DenyUsers
  73. 这个指令后面跟着一串用空格分隔的username列表(当中能够使用"*"和"?"通配符)。默认同意全部用户登录。
  74. 假设使用了这个指令,那么这些用户将被拒绝登录。
  75. 假设指定了 [email protected] 模式的用户,那么 USER 和 HOST 将同一时候被检查。
  76. 这里仅仅同意使用用户的名字而不同意使用UID。相关的 allow/deny 指令依照下列顺序处理:
  77. DenyUsers, AllowUsers, DenyGroups, AllowGroups
  78. ForceCommand
  79. 强制运行这里指定的命令而忽略client提供的不论什么命令。

    这个命令将使用用户的登录shell运行(shell -c)。

  80. 这能够应用于 shell 、命令、子系统的完毕,通经常使用于 Match 块中。
  81. 这个命令最初是在client通过 SSH_ORIGINAL_COMMAND 环境变量来支持的。
  82. GatewayPorts
  83. 是否同意远程主机连接本地的转发端口。默认值是"no"。
  84. sshd(8) 默认将远程端口转发绑定到loopback地址。这样将阻止其他远程主机连接到转发端口。

  85. GatewayPorts 指令能够让 sshd 将远程端口转发绑定到非loopback地址,这样就能够同意远程主机连接了。
  86. "no"表示仅同意本地连接,"yes"表示强制将远程端口转发绑定到统配地址(wildcard address),
  87. "clientspecified"表示同意客户端选择将远程端口转发绑定到哪个地址。
  88. GSSAPIAuthentication
  89. 是否同意使用基于 GSSAPI 的用户认证。默认值为"no"。

    仅用于SSH-2。

  90. GSSAPICleanupCredentials
  91. 是否在用户退出登录后自己主动销毁用户凭证缓存。

    默认值是"yes"。仅用于SSH-2。

  92. HostbasedAuthentication
  93. 这个指令与 RhostsRSAAuthentication 类似。可是仅能够用于SSH-2。

    推荐使用默认值"no"。

  94. 推荐使用默认值"no"禁止这样的不安全的认证方式。
  95. HostbasedUsesNameFromPacketOnly
  96. 在开启 HostbasedAuthentication 的情况下,
  97. 指定server在使用 ~/.shosts ~/.rhosts /etc/hosts.equiv 进行远程主机名匹配时。是否进行反向域名查询。
  98. "yes"表示 sshd(8) 信任client提供的主机名而不进行反向查询。默认值是"no"。
  99. HostKey
  100. 主机私钥文件的位置。假设权限不正确,sshd(8) 可能会拒绝启动。
  101. SSH-1默认是 /etc/ssh/ssh_host_key 。
  102. SSH-2默认是 /etc/ssh/ssh_host_rsa_key 和 /etc/ssh/ssh_host_dsa_key 。
  103. 一台主机能够拥有多个不同的私钥。"rsa1"仅用于SSH-1,"dsa"和"rsa"仅用于SSH-2。
  104. IgnoreRhosts
  105. 是否在 RhostsRSAAuthentication 或 HostbasedAuthentication 过程中忽略 .rhosts 和 .shosts 文件。
  106. 只是 /etc/hosts.equiv 和 /etc/shosts.equiv 仍将被使用。推荐设为默认值"yes"。
  107. IgnoreUserKnownHosts
  108. 是否在 RhostsRSAAuthentication 或 HostbasedAuthentication 过程中忽略用户的 ~/.ssh/known_hosts 文件。
  109. 默认值是"no"。为了提高安全性,能够设为"yes"。

  110. KerberosAuthentication
  111. 是否要求用户为 PasswordAuthentication 提供的password必须通过 Kerberos KDC 认证。也就是是否使用Kerberos认证。
  112. 要使用Kerberos认证,server须要一个能够校验 KDC identity 的 Kerberos servtab 。默认值是"no"。
  113. KerberosGetAFSToken
  114. 假设使用了 AFS 而且该用户有一个 Kerberos 5 TGT,那么开启该指令后,
  115. 将会在訪问用户的家文件夹前尝试获取一个 AFS token 。

    默觉得"no"。

  116. KerberosOrLocalPasswd
  117. 假设 Kerberos password认证失败,那么该password还将要通过其他的认证机制(比方 /etc/passwd)。
  118. 默认值为"yes"。
  119. KerberosTicketCleanup
  120. 是否在用户退出登录后自己主动销毁用户的 ticket 。

    默认值是"yes"。

  121. KeyRegenerationInterval
  122. 在SSH-1协议下。短命的server密钥将以此指令设置的时间为周期(秒),不断又一次生成。
  123. 这个机制能够尽量减小密钥丢失或者黑客攻击造成的损失。
  124. 设为 0 表示永不又一次生成。默觉得 3600(秒)。
  125. ListenAddress
  126. 指定 sshd(8) 监听的网络地址。默认监听全部地址。能够使用以下的格式:
  127. ListenAddress host|IPv4_addr|IPv6_addr
  128. ListenAddress host|IPv4_addr:port
  129. ListenAddress [host|IPv6_addr]:port
  130. 假设未指定 port ,那么将使用 Port 指令的值。
  131. 能够使用多个 ListenAddress 指令监听多个地址。
  132. LoginGraceTime
  133. 限制用户必须在指定的时限内认证成功。0 表示无限制。

    默认值是 120 秒。

  134. LogLevel
  135. 指定 sshd(8) 的日志等级(具体程度)。

    可用值例如以下:

  136. QUIET, FATAL, ERROR, INFO(默认), VERBOSE, DEBUG, DEBUG1, DEBUG2, DEBUG3
  137. DEBUG 与 DEBUG1 等价;DEBUG2 和 DEBUG3 则分别指定了更具体、更罗嗦的日志输出。
  138. 比 DEBUG 更具体的日志可能会泄漏用户的敏感信息,因此反对使用。
  139. MACs
  140. 指定同意在SSH-2中使用哪些消息摘要算法来进行数据校验。
  141. 能够使用逗号分隔的列表来指定同意使用多个算法。

    默认值(包括全部能够使用的算法)是:

  142. hmac-md5,hmac-sha1,[email protected],hmac-ripemd160,hmac-sha1-96,hmac-md5-96
  143. Match
  144. 引入一个条件块。块的结尾标志是还有一个 Match 指令或者文件结尾。
  145. 假设 Match 行上指定的条件都满足。那么随后的指令将覆盖全局配置中的指令。
  146. Match 的值是一个或多个"条件-模式"对。

    可用的"条件"是:User, Group, Host, Address 。

  147. 仅仅有下列指令能够在 Match 块中使用:AllowTcpForwarding, Banner,
  148. ForceCommand, GatewayPorts, GSSApiAuthentication,
  149. KbdInteractiveAuthentication, KerberosAuthentication,
  150. PasswordAuthentication, PermitOpen, PermitRootLogin,
  151. RhostsRSAAuthentication, RSAAuthentication, X11DisplayOffset,
  152. X11Forwarding, X11UseLocalHost
  153. MaxAuthTries
  154. 指定每一个连接最大同意的认证次数。

    默认值是 6 。

  155. 假设失败认证的次数超过这个数值的一半。连接将被强制断开,且会生成额外的失败日志消息。
  156. MaxStartups
  157. 最大同意保持多少个未认证的连接。默认值是 10 。
  158. 到达限制后,将不再接受新连接,除非先前的连接认证成功或超出 LoginGraceTime 的限制。
  159. PasswordAuthentication
  160. 是否同意使用基于password的认证。默觉得"yes"。
  161. PermitEmptyPasswords
  162. 是否同意password为空的用户远程登录。默觉得"no"。
  163. PermitOpen
  164. 指定TCP端口转发同意的目的地,能够使用空格分隔多个转发目标。默认同意全部转发请求。
  165. 合法的指令格式例如以下:
  166. PermitOpen host:port
  167. PermitOpen IPv4_addr:port
  168. PermitOpen [IPv6_addr]:port
  169. "any"能够用于移除全部限制并同意一切转发请求。

  170. PermitRootLogin
  171. 是否同意 root 登录。可用值例如以下:
  172. "yes"(默认) 表示同意。

    "no"表示禁止。

  173. "without-password"表示禁止使用密码认证登录。
  174. "forced-commands-only"表示仅仅有在指定了 command 选项的情况下才同意使用公钥认证登录。

  175. 同一时候其他认证方法所有被禁止。

    这个值经常使用于做远程备份之类的事情。

  176. PermitTunnel
  177. 是否同意 tun(4) 设备转发。可用值例如以下:
  178. "yes", "point-to-point"(layer 3), "ethernet"(layer 2), "no"(默认)。
  179. "yes"同一时候蕴含着"point-to-point"和"ethernet"。
  180. PermitUserEnvironment
  181. 指定是否同意 sshd(8) 处理 ~/.ssh/environment 以及 ~/.ssh/authorized_keys 中的 environment= 选项。
  182. 默认值是"no"。假设设为"yes"可能会导致用户有机会使用某些机制(比方 LD_PRELOAD)绕过訪问控制。造成安全漏洞。
  183. PidFile
  184. 指定在哪个文件里存放SSH守护进程的进程号。默觉得 /var/run/sshd.pid 文件。

  185. Port
  186. 指定 sshd(8) 守护进程监听的端口号,默觉得 22 。能够使用多条指令监听多个端口。
  187. 默认将在本机的全部网络接口上监听,可是能够通过 ListenAddress 指定仅仅在某个特定的接口上监听。
  188. PrintLastLog
  189. 指定 sshd(8) 是否在每一次交互式登录时打印最后一位用户的登录时间。

    默认值是"yes"。

  190. PrintMotd
  191. 指定 sshd(8) 是否在每一次交互式登录时打印 /etc/motd 文件的内容。默认值是"yes"。
  192. Protocol
  193. 指定 sshd(8) 支持的SSH协议的版本。
  194. ‘1‘和‘2‘表示只支持SSH-1和SSH-2协议。

    "2,1"表示同一时候支持SSH-1和SSH-2协议。

  195. PubkeyAuthentication
  196. 是否同意公钥认证。仅能够用于SSH-2。默认值为"yes"。
  197. RhostsRSAAuthentication
  198. 是否使用强可信主机认证(通过检查远程主机名和关联的username进行认证)。仅用于SSH-1。
  199. 这是通过在RSA认证成功后再检查 ~/.rhosts 或 /etc/hosts.equiv 进行认证的。
  200. 出于安全考虑,建议使用默认值"no"。
  201. RSAAuthentication
  202. 是否同意使用纯 RSA 公钥认证。仅用于SSH-1。默认值是"yes"。
  203. ServerKeyBits
  204. 指定暂时server密钥的长度。

    仅用于SSH-1。默认值是 768(位)。

    最小值是 512 。

  205. StrictModes
  206. 指定是否要求 sshd(8) 在接受连接请求前对用户主文件夹和相关的配置文件进行宿主和权限检查。

  207. 强烈建议使用默认值"yes"来预防可能出现的低级错误。
  208. Subsystem
  209. 配置一个外部子系统(比如,一个文件传输守护进程)。

    仅用于SSH-2协议。

  210. 值是一个子系统的名字和相应的命令行(含选项和參数)。比方"sft /bin/sftp-server"。
  211. SyslogFacility
  212. 指定 sshd(8) 将日志消息通过哪个日志子系统(facility)发送。有效值是:
  213. DAEMON, USER, AUTH(默认), LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7
  214. TCPKeepAlive
  215. 指定系统是否向client发送 TCP keepalive 消息。默认值是"yes"。
  216. 这样的消息能够检測到死连接、连接不当关闭、client崩溃等异常。
  217. 能够设为"no"关闭这个特性。
  218. UseDNS
  219. 指定 sshd(8) 是否应该对远程主机名进行反向解析,以检查此主机名是否与其IP地址真实相应。

    默认值为"yes"。

  220. UseLogin
  221. 是否在交互式会话的登录过程中使用 login(1) 。

    默认值是"no"。

  222. 假设开启此指令。那么 X11Forwarding 将会被禁止,由于 login(1) 不知道怎样处理 xauth(1) cookies 。
  223. 须要注意的是。login(1) 是禁止用于远程运行命令的。
  224. 假设指定了 UsePrivilegeSeparation 。那么它将在认证完毕后被禁用。
  225. UsePrivilegeSeparation
  226. 是否让 sshd(8) 通过创建非特权子进程处理接入请求的方法来进行权限分离。默认值是"yes"。
  227. 认证成功后。将以该认证用户的身份创建还有一个子进程。

  228. 这样做的目的是为了防止通过有缺陷的子进程提升权限。从而使系统更加安全。

  229. X11DisplayOffset
  230. 指定 sshd(8) X11 转发的第一个可用的显示区(display)数字。

    默认值是 10 。

  231. 这个能够用于防止 sshd 占用了真实的 X11 server显示区,从而发生混淆。
  232. X11Forwarding
  233. 是否同意进行 X11 转发。

    默认值是"no"。设为"yes"表示同意。

  234. 假设同意X11转发而且sshd(8)代理的显示区被配置为在含有通配符的地址(X11UseLocalhost)上监听。
  235. 那么将可能有额外的信息被泄漏。

    因为使用X11转发的可能带来的风险,此指令默认值为"no"。

  236. 须要注意的是,禁止X11转发并不能禁止用户转发X11通信,由于用户能够安装他们自己的转发器。
  237. 假设启用了 UseLogin ,那么X11转发将被自己主动禁止。
  238. X11UseLocalhost
  239. sshd(8) 是否应当将X11转发server绑定到本地loopback地址。默认值是"yes"。

  240. sshd 默认将转发server绑定到本地loopback地址并将 DISPLAY 环境变量的主机名部分设为"localhost"。
  241. 这能够防止远程主机连接到 proxy display 。只是某些老旧的X11client不能在此配置下正常工作。
  242. 为了兼容这些老旧的X11client。你能够设为"no"。
  243. XAuthLocation
  244. 指定 xauth(1) 程序的绝对路径。

    默认值是 /usr/X11R6/bin/xauth

时间: 2024-07-31 21:55:55

Linux启动与禁止SSH用户及IP的登录的相关文章

360:且用且珍惜!解决虚拟机linux启动缓慢以及ssh端卡顿的问题!

优化软件以及杀毒软件想必大家都是用过的,小编自用的第一台电脑自带安装的是金山毒霸,随着时间的偏移渐渐用过小红伞,卡巴斯基,优化大师,鲁大师到后来的360优化杀毒套装,优化软件给大家带来了方便,尤其是上上网看看视频玩玩游戏的还好,但是对于开发者我们是不是要好好选择一下呢? 小编我曾经问过很多开发者选择用金山还是360,几乎所有人都说用360,没几个说用金山的,难道金山有那么不堪吗?虽说我用的第一个毒霸就是金山的(当然当年还有瑞星这玩意..-_-),可我后来换成了360... 于是噩梦就开始了,我是

ubuntu12.04禁止单用户本地无密码root登录

1)grub-mkpasswd-pbkdf2 拿到类似grub.pbkdf2.sha512.10000.C093FE6825CDCC2F84934ABC406445E92EE098733C60E6D1EC037ED4BDC31D13DEC18DF2554800BBA6273E9073C10BE4018CA011700C05129D7A2AEF55436591.C8ECE34353FF2CBC2319DCCDDE1BE3F2EEE653FC56587951CC11932BA31E3E940B82B

Linux启动初始化配置文件

Linux启动初始化配置文件(1)/etc/profile 登录时,会执行. 全局(公有)配置,不管是哪个用户,登录时都会读取该文件. (2)/ect/bashrc Ubuntu没有此文件,与之对应的是/ect/bash.bashrc bash.bashrc 是交互式shell的初始化文件. (3)~/.profile 某个用户读取的配置. 若bash是以login方式执行时,读取~/.bash_profile,若它不存在,则读取~ /.bash_login,若前两者不存在,读取~ /.prof

Linux 禁止用户或 IP通过 SSH 登录

限制指定用户通过指定IP SSH 登录 1.只允许指定用户进行登录(白名单): 在 /etc/ssh/sshd_config 配置文件中设置 AllowUsers 选项,(配置完成需要重启 SSHD 服务)格式如下: AllowUsers aliyun [email protected] # 允许 aliyun 和从 192.168.1.1 登录的 test 帐户通过 SSH 登录系统. 2.只拒绝指定用户进行登录(黑名单): 在/etc/ssh/sshd_config配置文件中设置DenyUs

linux 禁止普通用户使用su切换到root用户和禁止 root ssh登陆

使用linux  特殊的用户组wheel: 在一般情况下,一般用户通过执行"su -"命令.输入正确的root密码,可以登录为root用户来对系统进行管理员级别的配置. 但是,为了更进一步加强系统的安全性,有必要建立一个管理员的 组,只允许这个组的用户来执行"su -"命令登录为root用户,而让其他组的用户即使执行"su -".输入了正确的root密码,也无法登录为root用户.在UNIX和Linux下,这个组的名称通常为"wheel

linux视频学习7(ssh, linux启动过程分析,加解压缩,java网络编程)

回顾数据库mysql的备份和恢复: show databases; user spdb1; show tables; 在mysql/bin目录下 执行备份: ./mysqldump -u root -p spdb1 > /home/spdb1.bak 会提示输入用户root的密码. 删除一个数据库 drop database  spdb1; 恢复数据库: mysql -u root -p  数据库名 < /home/spdb1.bak 恢复数据库前需要新建一个空的数据库,否则报错. 在/mys

linux下用非root用户重启导致ssh无法连接的问题

问题描述 安装好了centOS服务器,一直用Secure CRT工具通过ssh服务来远程连接linux,很方便的进行各种操作.今天偶然尝试了一下在非root的一般用户下执行重启服务器的命令,发现一般用户是没有权限执行重启的,果断使用sudo命令再次执行,终于重启成功,却发现Secure CRT再也连不上服务器了,郁闷不已,去网上查找各种资料总算有了一点粗浅的认识,记录下来,也让其他的linux beginner们能够少走些弯路吧. 普通用户下执行重启命令: shutdown -r now 或者

linux指定某非root用户执行开机启动项的方法(gogs git)

以linux指定git用户在linux开机时执行启动gogs git为例: 以root登录linux 执行vi /etc/rc.d/rc.local 在文档末尾添加一行语句:su git -c "/data/gogs/gogs  web > /data/gogs/log/gogs_web.log 2>&1 &" 保存rc.local即可.

linux下怎么查看ssh的用户登录日志

linux下登录日志在下面的目录里: cd /var/log 查看ssh用户的登录日志: less secure linux日志管理: 1. 日志简介 日志对于安全来说,非常重要,他记录了系统每天发生的各种各样的事情,你可以通过他来检查错误发生的原因,或者受到攻击时攻击者留下的痕迹.日志主要的功能有:审计和监测.他还可以实时的监测系统状态,监测和追踪侵入者等等. 在Linux系统中,有三个主要的日志子系统: 连接时间日志--由多个程序执行,把纪录写入到/var/log/wtmp和/var/run