RH133读书 笔记(3) - Lab 3 Configuring the kernel
Lab 3 Configuring the kernel
Goal: Develop skills tuning the /proc filesystem.
Gain some experience working with device special files and modules.
Use the tools available to explore hardware resources.
Estimated Duration: 45 minutes
Sequence 1: Turning off ping responses
Scenario: You want to reduce the exposure of a critical system. One of your strategies is to “hide” it from easy discovery by ICMP ECHO requests.
Deliverable: A system that does not respond to ping.
Instructions:
1. Configure your system, so that it does not respond to any ping request. This configuration should survive a reboot.
Hint: Install the kernel-doc package and check the kernel documentation on /usr/share/doc/kernel-doc-2.6.18/Documentation/networking/ipsysctl.txt.
a. Check the present value of /proc/sys/net/ipv4/icmp_echo_ignore_all
# cat /proc/sys/net/ipv4/icmp_echo_ignore_all
It should be currently set to zero which means your system will respond normally to pings.
b. Change the value of /proc/sys/net/ipv4/icmp_echo_ignore_all to a 1 which will prevent other hosts from successfully pinging your host while not affecting your ability to ping them. Verify your work.
# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
# cat /proc/sys/net/ipv4/icmp_echo_ignore_all
c. Now test pinging server1.example.com. Pressing Ctrl-C will stop the ping command and display some statistics for you. You should have been able to ping server1.
d. Next have someone else try pinging your station. They should not receive any responses back from your system. Alternatively, try to ping your own network address. This should not work either.
e. Now reboot your system and try to ping your station again. What happened? Why?
f. Remember that changes to the /proc filesystem are temporary and if you want them to persist across reboots you need to put an entry in /etc/sysctl.conf. Edit /etc/sysctl.conf and put the following line at the bottom:
net.ipv4.icmp_echo_ignore_all=1
g. To activate this change run:
# sysctl -p
h. Check the value in /proc. If it is not set to a 1 then recheck the previous two steps. Next reboot your system and check the value in /proc again.
2. MANDATORY CLEANUP
a. Comment out or remove net.ipv4.icmp_echo_ignore_all=1 from /etc/sysctl.conf
b. Remember that changing this file does not affect the system's current configuration, so you will want to undo your change directly as well:
# echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
# cat /proc/sys/net/ipv4/icmp_echo_ignore_all
This is to prevent other things from breaking during the week and help preserve your and your instructor's sanity.
Optional Sequence 2: Creating a file persistently under /dev/
Scenario: You want to make sure the /dev/myusbdisk filename is available after a reboot and can be used to mount a USB device.
Deliverable: A system that provides /dev/myusbdisk automatically after a reboot.
System Setup: System running in runlevel 5.
Instructions:
1. Modify the udev subsystem in such a way that /dev/myusbdisk gets automatically created at boot time.
Create a file named /etc/udev/rules.d/99-usb.rules and insert the following statement in it:
KERNEL=="sdb1", NAME="myusbdisk"
Note: Systems with IDE harddrives use sda for the first USB disk.
2. Reboot the system.
init 6
Plug a USB key to your system and verify that you now have a file named /dev/myusbdisk.
ls -l /dev/myusbdisk
3. MANDATORY CLEANUP: Remove the file you have created under /etc/udev/rules.d/ and unplug the USB device.
rm /etc/udev/rules.d/99-usb.rules
Sequence 3: Exploring processes, hardware and memory resources
Scenario: You want to determine what processes are running on your system, which hardware devices are available, and how much RAM is left.
Deliverable:
System Setup: System running in runlevel 5.
Instructions:
1. Determine the top-three processes with the largest memory footprint.
# top
Type “M” to sort processes in order of decreasing memory usage. The three processes at the top of the list are the three largest.
2. Determine the top-three processes with the largest cpu usage.
# top
Type “P” to sort processes in order of decreasing CPU usage. The three processes at the top of the list are the three busiest processes.
3. Start a window in which, using vmstat, a memory snapshot will be obtained every 5
seconds.
# vmstat 5
In parallel, start a memory-intensive application and observe the results.
# cat /dev/hda > /dev/null
4. Determine what network card (brand and/or model) is currently connected to your system.
You might first want to take a look at the lspci command.
The hal-device -manager will also display more information about the network interface card.
RH133读书 笔记(3) - Lab 3 Configuring the kernel的更多相关文章
- RH133读书笔记(1)-Lab 1 Managing Startup
Lab 1 Managing Startup Goal: To familiarize yourself with the startup process System Setup: A system ...
- RH133读书笔记(2)-Lab 2 Working with packages
Lab 2 Working with packages Goal: To gain working experience with package management System Setup: A ...
- RH033读书笔记(11)-Lab 12 Configuring the bash Shell
Sequence 1: Configuring the bash Shell Deliverable: A system with new aliases that clear the screen, ...
- RH133读书 笔记(5) - Lab 5 User and Group Administration
Lab 5 User and Group Administration Goal: To build skills for user and group administration. Estimat ...
- RH133读书 笔记(4) - Lab 4 System Services
Lab 4 System Services Goal: Develop skills using system administration tools and setting up and admi ...
- RH133读书笔记(6) - Lab 6 Adding New Filesystems to the Filesystem Tree
Lab 6 Adding New Filesystems to the Filesystem Tree Goal: Develop skills and knowlege related to par ...
- RH133读书笔记(9)-Lab 9 Installation and System-Initialization
Lab 9 Installation and System-Initialization Goal: Successfully install Red Hat Enterprise Linux. Sy ...
- RH133读书笔记(8)-Lab 8 Manage Network Settings
Lab 8 Manage Network Settings Goal: To build skills needed to manually configure networking Estimate ...
- RH133读书笔记(7)-Lab 7 Advanced Filesystem Mangement
Lab 7 Advanced Filesystem Mangement Goal: Develop skills and knowlege related to Software RAID, LVM, ...
随机推荐
- MySql 安装及0基础使用具体解释
1. sudo apt-get install mysql-server, input administrator password , '123' 2. enter mysql promot in ...
- 2014年度辛星解读css第四节
接下来的这一节我计划解说的是超链接和列表的样式,然后我们做出一个导航栏出来,事实上导航栏是很常见的,可是我们这里做得这个有点并不那么完好,等我们学完了css之后再完好它. ************** ...
- 服务器编程入门(4)Linux网络编程基础API
问题聚焦: 这节介绍的不仅是网络编程的几个API 更重要的是,探讨了Linux网络编程基础API与内核中TCP/IP协议族之间的关系. 这节主要介绍三个方面的内容:套接字( ...
- 【剑指offer】旋转数组的最小值
採用二分查找的策略,重点要考虑一些边界情况:旋转了0元素.即输入的是一个升序排列的数组.仅仅包括一个数字的数组.有非常多反复数字的数组等. AC代码: #include<stdio.h> ...
- android插件技术-apkplug于OSGI服务基础-08
我们提供 apkplug 下OSGI使用demo 源代码托管地址为 http://git.oschina.net/plug/OSGIService 一 OSGI与android Service 异同点 ...
- web.xml的运行顺序
整体上的顺序为 <context-param> <listener> <filter> <servlet> 往下依次运行. 当中,每一个类别内部都是按序 ...
- Cacti监控Tomcatserver实现过程
1 首先去官网上面下载通用的监控模板 一般使用TomcatStats-0.1.zip 模板居多,下载地址: http://forums.cacti.net/download/file.php?id=1 ...
- 64位CentOS5.6安装Mysql 5.5.11GA
1.更新并查看当前CentOS版本是否为5.6yum updatelsb_release -a 2.下载文件下载 bison-2.4.3.tar.gz到/usr/local/src下载 cmake-2 ...
- XML解析中的namespace初探
原文:XML解析中的namespace初探 初学者在解析XML文件的时候最容易遇到的问题恐怕就是XML的namespace了,本文旨在对namespace做一个简要的介绍. namespace的意义无 ...
- 【JavaEE基础】在Java中如何使用jdbc连接Sql2008数据库
我们在javaEE的开发中,肯定是要用到数据库的,那么在javaEE的开发中,是如何使用代码实现和SQL2008的连接的呢?在这一篇文章中,我将讲解如何最简单的使用jdbc进行SQL2008的数据库的 ...