当前位置:  操作系统/服务器>linux
本页文章导读:
    ▪加强sshd服务的安全性设置      一.修改默认端口:原文本内容为#Port 22,将注释去掉,并修改成其它的端口,例如修改为Port 1433。 二.禁止root用户远程登陆:原文本内容为#PermitRootLogin yes,修改为PermitRootLogin no。 一般情况.........
    ▪了解Linux环境变量      再加上Linux/Unix系统分支太多、版本延续等原因,导致设置环境变量的涉及文件差别太大。于是,除长期使用某Linux平台用户外,大都对环境变量设置比较浆糊,只能随用随查。 注意:本文内.........
    ▪Linux下软件卸载方法      Linux下卸载软件不如windows下方便,卸载Linux平台软件非常麻烦,而且提示不清,经常还会为路径问题煞费脑筋,因为有些源码编译安装的,所以路径一般不会使用默认路径,那么有依赖关系的.........

[1]加强sshd服务的安全性设置
    来源: 互联网  发布时间: 2013-12-24

一.修改默认端口:原文本内容为#Port 22,将注释去掉,并修改成其它的端口,例如修改为Port 1433。

二.禁止root用户远程登陆:原文本内容为#PermitRootLogin yes,修改为PermitRootLogin no。
一般情况下用普通用户ssh登录,如需root权限,再su。

三.禁止空密码用户登陆:原文本内容为#PermitEmptyPasswords no,修改为PermitEmptyPasswords no

四.限制登陆密码输错为6次:原文本内容为#MaxAuthTries 6,修改为MaxAuthTries 6

五.增加警示信息:vi /etc/ssh/ssh-banner.txt,输入以下内容:
*This is a private SSH service. Only allow appointed employee login.*
*Please leave immediately if you no gained accredit.Thank you a lot. *
保存退出,然后修改原文本内容#Banner /some/path为Banner /etc/ssh/ssh-banner.txt

六.阻止超过登陆密码输错次数的ip:
1.使用工具Denyhost,下载地址:http://rpm.pbone.net/index.php3/stat/4/idpl/12670968/com/DenyHosts-2.6-python2.4.noarch.rpm.html

2.检查安装环境:
ldd /usr/sbin/sshd |grep wrap #得到:libwrap.so.0 => /usr/lib64/libwrap.so.0 (0x00002aaaaacc6000)
python -V #得到:Python 2.4.3

3.安装并做成系统服务:
 

代码如下:
rpm -Uvh DenyHosts-2.6-python2.4.noarch.rpm
cd /usr/share/denyhosts
cp daemon-control-dist daemon-control
chmod 700 daemon-control
ln -s /usr/share/denyhosts/daemon-control /etc/init.d/denyhosts
chkconfig --add denyhosts
chkconfig --level 345 denyhosts on

4.做相应的配置:
 

代码如下:
cd /usr/share/denyhosts/
cp denyhosts.cfg-dist denyhosts.cfg
chmod 600 denyhosts.cfg
vi denyhosts.cfg
修改默认参数至如下:
PURGE_DENY = 15d #过多久后从/etc/hosts.deny清除已经禁止的ip,即阻止ip的时间,m表示分钟、d表示天、w表示周
DENY_THRESHOLD_INVALID = 3 #允许无效用户(/etc/passwd未列出的)登录失败的次数
DENY_THRESHOLD_VALID = 6 #允许有效(普通)用户登录失败的次数
DENY_THRESHOLD_ROOT = 6 #允许root登录失败的次数
HOSTNAME_LOOKUP=NO #是否做域名反解

5.启动服务:
 

代码如下:
service denyhosts status #状态
service denyhosts start #启动
service denyhosts restart #重启

6.还有Fail2Ban和sshfilter这两个小工具也可达到相应的目的。

通过tail -f /var/log/secure,可查看试图非法ssh的信息。
通过vi /etc/hosts.deny,可查看恶意连接的ip。

通过cat /var/log/denyhosts查看Denyhost日志文件。


    
[2]了解Linux环境变量
    来源: 互联网  发布时间: 2013-12-24

再加上Linux/Unix系统分支太多、版本延续等原因,导致设置环境变量的涉及文件差别太大。于是,除长期使用某Linux平台用户外,大都对环境变量设置比较浆糊,只能随用随查。

注意:本文内容可能随Linux版本不同有细微差异。

一、Linux环境变量文件

涉及文件有:
/etc/environment - 在登录时首先加载。
/etc/profile - 系统初始化文件,全局用户环境变量,登录时执行.
~/.bash_profile - 登录时设置生效,当用户登录时,该文件执行一次。
~/.bashrc - 个人交互式SHELL启动生效。当登录时及每次打开新Shell时,该该文件被执行。
~/.bash_login -个人登录Shell生效,登录时执行。
~/.bash_logout - 个人登录Shell清理文件,退出Shell时执行。
按照IBM网站说法/etc/environment本来是属于交互式登录时第一个执行的(先于/etc/profile),但是,天缘查看最新的CentOS 6.3上/etc/environment已为空文件,从/etc/profile说明来看,似乎系统更加倾向于要求用户不要修改这些默认的配置文件,而是把自己的配置文件放入专门的目录(/etc/profile.d/*.sh等位置)。

二、交互式登录SHELL

登录时执行顺序:
 

代码如下:
execute /etc/profile
IF ~/.bash_profile exists THEN
execute ~/.bash_profile
ELSE
IF ~/.bash_login exist THEN
execute ~/.bash_login
ELSE
IF ~/.profile exist THEN
execute ~/.profile
END IF
END IF
 

登出时执行:
 

代码如下:
IF ~/.bash_logout exists THEN
   execute ~/.bash_logout
END IF
 

请注意~/.bashrc执行的是/etc/bashrc:
 

代码如下:
# cat ~/.bashrc
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi

三、交互式非登录SHELL
 

代码如下:
IF ~/.bashrc exists THEN
    execute ~/.bashrc
END IF

备注:
~/.profile 表示 $HOME/.profile
交互式登陆Shell与交互式非登录Shell区别:前者执行/etc/profile和~/.bash_profile, ~/.bash_login, and ~/.profile,后者只执行/etc/bash.bashrc和~/.bashrc。

您可能感兴趣的文章:
Linux环境变量的设置与查看
设置Linux环境变量的三种方法
Linux环境变量配置小结


    
[3]Linux下软件卸载方法
    来源: 互联网  发布时间: 2013-12-24

Linux下卸载软件不如windows下方便,卸载Linux平台软件非常麻烦,而且提示不清,经常还会为路径问题煞费脑筋,因为有些源码编译安装的,所以路径一般不会使用默认路径,那么有依赖关系的软件就很容易出问题,找不到依赖执行或配置文件。而有一些又是系统默认安装的,路径一般比较分散,再加上平台多,卸载起来更是麻烦。

本文总结了常见的几种Linux软件卸载方式,希望可以帮助大家掌握如何卸载Linux下的各种软件。

注:以下命令均在终端SHELL中进行。X-WINDOW也有对应的文件管理工具,但终究使用较少。安装和卸载软件前最好看看README,一般均有说明,国内软件就不说了,有时作者都不清楚如何卸载的软件都会往外发。

一、绿色软件

这类软件大多是以压缩包(*.tar.gz,...)形式发放的,跟下文的源码包类似,但是不需要编译,直接解压到某个目录即可运行。这类软件直接到对应目录下删除即可。不涉及相关系统变量修改,至多再加上相关启动选项修改或启动链接。
rm -rf softname_version

二、使用RPM包安装的软件

1、确定软件版本
rpm -qa|grep softname*
softname为软件名称,不确定部分可使用*通配符。接着就会有相关的软件包列表。

2、卸载软件包
rpm -e softname_version
softname_version为完整的软件包名称。
当卸载RPM安装包时,经常会遇到系统提示如下错误:
error: specifies multiple packages,出现该错误一般是因为有两个或多个同名包,(典型:是x86和x64包都安装),Linux无法区分卸载目标。这时可使用--allmatches参数,告诉卸载程序,只要匹配就卸载,相当于同名的同时都卸载。
常见卸载错误xxx.so is needed by yyy时,说明这些库跟这些程序有依赖关系(运行需要),如果确认没有问题,可以 使用--nodeps 参数,不考虑依赖关系而直接卸载gd包,比如# rpm -e gd --allmatches --nodeps

3、定制的安装和卸载软件
这类软件很少了,但是某些商业软件则会提供,安装卸载会跟WINDOWS平台一样,一般只需运行一个脚本就可完成。

三、自编译安装的软件

这类软件有*.tar.gz,*.tar.bz,*.tar.bz2等,都是源程序,需要编译才能安装(当然也有上文的绿色解压安装的,但也使用tar.gz这样打包的,不在此列)。这类软件使用上文的rpm命令查不到任何信息。只有天知道(自己过些日子可能也不知道)安装到了哪里。

1、卸载自编译软件
make uninstall
注意该命令要在源码包目录下执行,使用此命令卸载软件,会比较彻底,而且各相关路径全部都会列出来。
但是,往往我们安装后,源码包会删除掉,只剩安装目标了,那么在找到安装时的配置就很麻烦(路径可能是默认路径,也可能指定路径)。而且也未必能够找到。安装LOG也未必能帮得上忙。

2、XXX卸载方法
如果遇到上面说的那种情况(其实是经常遇到),又找不到路径的,只能手动删除了,确保没有运行干扰的程序就可以了。
此外,还有*.src.rpm形式的源代码包,也需要编译安装,卸载方法同第二节。


    
最新技术文章:
▪linux系统中的列出敏感用户的脚本代码
▪a10 config backup for aXAPI
▪一键备份gitolite服务器的Shell脚本
▪nagios 分发文件实现代码
▪阿里云云服务器Linux系统更新yum源Shell脚本
▪一个监控LINUX目录和文件变化的Shell脚本分享
▪Linux下实现SSH免密码登录和实现秘钥的管理、...
▪Shell正则表达式之grep、sed、awk实操笔记
▪3个备份系统文件并邮件发送的Shell脚本分享
▪CentOS 6.3下给PHP添加mssql扩展模块教程
▪监控网站是否可以正常打开的Shell脚本分享
▪shell脚本编程之if语句学习笔记
▪shell脚本编程之循环语句学习笔记
▪shell脚本编程之case语句学习笔记
▪Shell脚本实现的阳历转农历代码分享
▪Shell脚本实现复制文件到多台服务器的代码分...
▪Shell脚本实现批量下载网络图片代码分享
▪Shell脚本实现检测文件是否被修改过代码分享
▪Shell脚本数组用法小结
▪Shell脚本批量重命名文件后缀的3种实现
java开源软件 iis7站长之家
▪Linux下查找后门程序 CentOS 查后门程序的shell脚...
▪Shell 函数参数
▪linux shell 自定义函数方法(定义、返回值、变...
▪Shell实现判断进程是否存在并重新启动脚本分...
▪Shell脚本break和continue命令简明教程
▪Shell脚本函数定义和函数参数
▪让代码整洁、过程清晰的BASH Shell编程技巧
▪shell常用重定向实例讲解
▪awk中RS、ORS、FS、OFS的区别和联系小结
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3