focus on linux, c/c++, lua

linux server的几个安全常识

1,关于ssh中的配置安全
sudo nano /etc/ssh/sshd_config
关掉ssh的root和xm11的登录许可, 

#PermitRootLogin yes 改为如下的; PermitRootLogin no 注意,要把前面的#号去掉。

重启sshd服务器 sudo /etc/init.d/ssh restart
同时可以修改ssh的端口。
2,不要安装ftp服务,尽量少暴漏端口,如果传输文件,优先考虑用ssh协议,比如用winSCP传输文件,scp命令等。 

另外一个常用的需求是在你管理的服务器之间拷贝文件.尽管你可以在所有的服务器上都安装一个FTP服务器,但这并不是一个理想的安全的解决方案.利用scp命令, SSH拥有拷贝文件的. 利用你已经建立的(SSH的)基于key的安全认证机制, 你可以在一个安全的通道上拷贝文件.

使用下面的命令来将一个本地文件拷贝到远程主机:

scp /path/to/file user@remotehost:/path/to/destination

使用下面的命令来将一个远程主机文件拷贝到本地:

scp user@remotehost:/path/to/file /path/to/destination

利用-r选项,来将一个本地目录拷贝到远程主机:

scp -r /path/to/directory/ user@remotehost:/path/to/destination/

如果你要传输日志文件或其他有较大压缩比的文件, -C参数会很有帮助. 这会打开压缩选项,虽然在拷贝的时候会使用更多的CPU,但是它会在传输的时候增加传输速度.

利用-l选项来限制可以使用的带宽. 把你希望的带宽放在-l后面, 它以K/s为单位. 例如,以256 Kbps的带宽来传输文件使用下面的命令:

scp -l 256 /path/to/file user@remotehost:/path/to/destination

3, 用VI操作vipw中,限制一些用户登录。比如nobody,即使不做这个也没事,后面我们用的denyhost可以防止ssh暴力破解。
4,修改mysql的一些配置,删除掉空的用户名和空的密码用户,修改root的密码,最好不要再ssh中输入密码,在mysql下输入,防止明码暴漏。
mysql>use mysql;
mysql>update user set user="wghgreat" where user="root";
mysql>select host,user,password,select_priv,grant_priv from user;
mysql>delete from user where user=;
mysql>delete from user where password=;
mysql>delete from user where host=%;
mysql>drop database test;
mysql>flush privileges;
5,删除操作历史记录
这些历史文件包括~/.bash_history、~/.mysql_history等。如果打开它们,你会大吃一惊,怎么居然有一些明文的密码在这里?!

#cat /dev/null > ~/.bash_history
#cat /dev/null > ~/.mysql_history
6,如果想看系统操作日志,去/var/log/syslog中去查看。
7,ban掉mysql的tcp连接,还在学习中,搞懂后会贴上来。
8,想用客户端远程连接mysql,必须要停掉slave服务器,修改my.cnf中的内网IP地址,修改完毕后还原

posted on 2010-04-24 15:11 zuhd 阅读(1384) 评论(0)  编辑 收藏 引用 所属分类: server


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理