Archive for the ‘Unix’ Category

sun服务器solaris系统的root密码忘记了怎么办?

Monday, June 16th, 2008

sun服务器solaris的root密码忘记了怎么办? 你需要这样做: a) 一个控制台(显示器接上服务器), 或者 用对应的串口线 由一台台式机/笔记本的串口连接到服务器: 1) 如果串口控制台使用一个RJ45头作为串口连接器, 就用服务器随机器自带的连接线连接,或者, 可以用cisco交换机使用的终端DB9连接线(PC端用cisco线缆连接到 串口1上) 2) 如果串口控制台使用一个DB25头作为串口连接器, 就用服务器随机器自带的连接线连接,或者, 可以用HP DB9转DB25的连接线. 因为大多数情况我们是使用串口连接来登录控制服务器。 b) 打开一个超级终端(Hyperterminal/SecureCRT或者其它),来通过COM1 (9600-8-N-1-None)使用vt100仿真来打开一个到服务器的连接。 c) 按shift加break键来暂停服务器系统。 d) 在OK提示符下输入: OK boot cdrom -s e) 启动之后输入: TERM=vt100 export TERM mkdir /tmp/d0 mount /dev/dsk/c0t0d0s0 /tmp/d0 cd /tmp/d0/etc f) 将/etc/passwd文件第二字段留空 vi /tmp/d0/etc/passwd (x命令表示删除 , :wq 命令表示保存退出) g) 重启 reboot h) 当提示输入root密码时,直接按Enter回车键 i) 修改root密码,输入: passwd 注 1: 如果可能的话,你需要运行一下fsck 示例: fsck -F -y /dev/rdsk/c0t0d0s0 FSTYPE(文件系统): 一般来说是 ufs 注 2: 如果你使用Solstice Disksuite 做了启动盘的镜像,你需要将修改后的 /etc/passwd 文件复制到另一个分区. 示例: mkdir /tmp/d1 mount /dev/dsk/c0t1d0s0 /tmp/d1 cp -p /tmp/d0/etc/passwd /tmp/d1/etc/passwd (the end)

如何通过限制SSH访问来加强服务器的安全

Friday, May 30th, 2008

本文将讲述一些可以加强Unix,Linx服务器SSH访问的安全性的一些措施。 我个人极力非常推荐的措施是: 1.限制性SSH访问,将sshd绑定到一个ip地址,和允许所有ip地址是完全不同的安全。 2.将sshd默认端口22改为其它端口。 步骤如下: 前提: SSH 客户端 - 我推荐使用 putty (搜索google,你会很快找到它) SSH 服务已安装 第一步: 以root身份SSH登录到服务器。 第二步:在命令提示符下输入:pico -w /etc/ssh/sshd_config 第三步:向下翻页,在这个文件中找到像这样的区域: #Port 22 #Protocol 2, 1 #ListenAddress 0.0.0.0 #ListenAddress :: 第四步:取消注释符号#,并修改 端口 #Port 22 像这样修改它 Port 5678 (选择你未被使用的4到5位数字组成的端口(49151是最高端口数)) 协议 #Protocol 2, 1 改为这样: Protocol 2 监听地址 #ListenAddress 0.0.0.0 改为这样: ListenAddress 125.121.123.15(这里的地址改为你自己访问服务器常用的客户端ip地址) 第五步 如果你想禁用直接用root登录,向下翻知道你看见 #PermitRootLogin yes 去掉前面的注释符号#,修改为 PermitRootLogin no 按住Ctrl键保存修改,在按Ctrl + x组合键退出。 第六步 在命令提示符下输入: /etc/rc.d/init.d/sshd restart 第七步 退出SSH,以后再登录就必须使用新的端口号(如:49151),并且服务器限制只允许从一个指定的 IP地址(如:125.121.123.15)SSH登录了。 注意事项: 如果修改后出现不能登录或者其他问题,你只需要为服务器接上显示器 或者 Telnet 到你的服务器,修改设置,然后再重新SSH登录。Telnet 是一个非常不安全的协议,所以在你使用它之后最好是修改一下你的root密码。 (the end)

Shell命令行下如何查找并替换多个文件中的字符

Thursday, January 24th, 2008

如果你在shell命令行下,需要一种能快速查找并替换多个文件里字符的方法, 那么下面这行命令你一定要记住或者收藏起来,它能帮到你的。 find . -name '*.html' -print0 | xargs -0 perl -pi -e 's/SEARCHSTRING/REPLACESTRING/g' 注解: *.html:表示查找所在目录下的所有扩展名为html的文件; SEARCHSTRING:要查找搜索的字符; REPLACESTRING:替换后的字符。 记住:如果替换的字符包括 ()[]/"'!? 等等这样的特殊字符,你必须在字符前加上反斜杠\ 。 使用举例: 1.创建一个新目录: $ mkdir test $ cd test 2.创建1.html,2.html两个文件,并分别输入i like china : [root@localhost test]$ vi 1.html 按i进入输入模式,输入: i like china 按esc键退出输入模式,输入 :wq 退出。 [root@localhost test$] vi 2.html 按i进入输入模式,输入: you like china 按esc键退出输入模式,输入 :wq 退出。 3.运行替换命令,like感情不够强烈,呵呵,我们这里要将2个文件中的字符 like 换为 love : [root@localhost test]$ find . -name '*.html' -print0 | xargs -0 perl -pi -e ...